8
votes

Que signifie la syntaxe PHP Var1 -> $ Var2?

Quelle est l'explication de la syntaxe suivante?

$var1->$var2 // Note the second $


0 commentaires

3 Réponses :


9
votes

$ var1 code> est un objet.

$ var2 code> est (éventuellement) le nom d'une variable à l'intérieur $ var1 code>. p>

si $ var2 = "test"; code> est évalué à: p> xxx pré>

Vous pouvez le faire avec toutes sortes de choses: P>

echo $$name->$name2; // Echos hi


3 commentaires

Qu'y a-t-il avec les signes du double dollar?


Pouvez-vous inclure un exemple de get / poste avec un autre?


@Codybugstein si $ foo = "bar" et $ bar = "biz" puis $$ foo retournera "BIZ" < / Code> Parce que le signe Dollar Dollar indiquera à l'ordinateur d'obtenir la variable dont le nom est la valeur de foo . Fondamentalement, en $$ FOO , remplacer dans votre tête $ FOO avec bar et vous obtenez $ bar . Notez le $ dans $ bar est le premier $ dans $$ foo qui reste après avoir remplacé dans votre diriger. Stackoverflow.com/Questtions/2715654/...



2
votes

Cela signifie interrogé de manière dynamique une propriété dans un objet. xxx

donc $ var1 est une instance de certains objets, -> signifie que l'accès à un membre de cet objet et $ var2 contient le nom d'une propriété.


0 commentaires

17
votes

Vous appelez une propriété sur $ var1 code> nommé identique à la valeur de $ var2 code>.

Par exemple: P>

$var2 = "name";

// The following are equivalent
$var1->name;
$var1->$var2;


0 commentaires