Je cherchais justement la même chose et j'ai réalisé qu'une fois de plus, ma façon de penser est différente parce que je suis de la vieille école. J'ai remonté jusqu'à BASIC et PERL et j'oublie parfois combien les choses sont faciles en PHP.
Je viens de créer cette fonction pour prendre tous les paramètres de la base de données où il y a 3 colonnes. setkey, item (key) & value (value) et les placer dans un tableau appelé settings en utilisant la même clé/valeur sans utiliser push comme ci-dessus.
Assez facile et simple, vraiment
// Get All Settings
$settings=getGlobalSettings();
// Apply User Theme Choice
$theme\_choice = $settings\['theme'\];
.. etc etc etc ....
function getGlobalSettings(){
$dbc = mysqli\_connect(wds\_db\_host, wds\_db\_user, wds\_db\_pass) or die("MySQL Error: " . mysqli\_error());
mysqli\_select\_db($dbc, wds\_db\_name) or die("MySQL Error: " . mysqli\_error());
$MySQL = "SELECT \* FROM systemSettings";
$result = mysqli\_query($dbc, $MySQL);
while($row = mysqli\_fetch\_array($result))
{
$settings\[$row\['item'\]\] = $row\['value'\]; // NO NEED FOR PUSH
}
mysqli\_close($dbc);
return $settings;
}
Donc, comme les autres messages l'expliquent... En php, il n'y a pas besoin de "PUSH" un tableau quand vous utilisez
Clé => Valeur
ET... Il n'est pas non plus nécessaire de définir le tableau en premier.
$array=array() ;
Il n'est pas nécessaire de définir ou de pousser. Assignez simplement $array[$key] = $value ; C'est automatiquement un push et une déclaration en même temps.
Je dois ajouter que pour des raisons de sécurité, (P)oor (H)elpless (P)rotection, je veux dire Programmation pour les nuls, je veux dire PHP.... hehehe je vous suggère d'utiliser ce concept uniquement pour ce que j'ai prévu. Toute autre méthode pourrait constituer un risque pour la sécurité. Voilà, j'ai fait mon disclaimer !