Je sais que vous pouvez faire: $hash('foo')
et $$foo
et aussi $bar[$foo]
, comment s'appellent chacune de ces choses?variables-variables en PHP
5
A
Répondre
18
$hash('foo')
est une fonction variable.$hash
peut contenir une chaîne avec le nom de la fonction ou une fonction anonyme.$hash = 'md5'; // This means echo md5('foo'); // Output: acbd18db4cc2f85cedef654fccc4a4d8 echo $hash('foo');
$$foo
est une variable variable.
$foo
peut contenir une chaîne avec le nom de la variable.$foo = 'bar'; $bar = 'baz'; // This means echo $bar; // Output: baz echo $$foo;
$bar[$foo]
est une clé de tableau variable.$foo
peut contenir tout ce qui peut être utilisé comme une clé de tableau, comme un index numérique ou un nom associatif.$bar = array('first' => 'A', 'second' => 'B', 'third' => 'C'); $foo = 'first'; // This tells PHP to look for the value of key 'first' // Output: A echo $bar[$foo];
Le manuel PHP a un article sur variable variables, et un article sur anonymous functions (mais je ne montre un exemple ci-dessus pour ce dernier).
wow, je l'ai eu raison en devinant. Pouvez-vous citer ceci cependant? – Johnny
Les touches de tableau variable sont assez agrafe. J'ai inclus les liens manuels PHP pour les variables variables et les fonctions variables. – BoltClock
Les choses deviennent vraiment drôles si vous utilisez la syntaxe de la variable étendue. Cela permet des choses comme '$ {'prefix_'. $ name} 'ou encore des choses plus amusantes comme' $ {$ var = 'var'} '(c'est' 'var''). – NikiC