PHP语法$ var1 - > $ var2是什么意思?

eft*_*eft 7 php syntax

以下语法的解释是什么?

$var1->$var2 // Note the second $
Run Code Online (Sandbox Code Playgroud)

Kyl*_*man 17

您正在调用的属性$var1名称与值相同$var2.

例如:

$var2 = "name";

// The following are equivalent
$var1->name;
$var1->$var2;
Run Code Online (Sandbox Code Playgroud)


Tyl*_*ter 9

$var1 是一个对象.

$var2是(可能)里面变量的名称$var1.

如果$var2="test";评估为:

$var1->test;
Run Code Online (Sandbox Code Playgroud)

你可以用各种各样的东西来做到这一点:

$test = array();
$name="test";
print_r($$name); // Prints array();

$test = new stdClass;
$test->hello = "hi";
$name2="hello";
echo $test->$name2; // Echos hi
Run Code Online (Sandbox Code Playgroud)

你甚至可以得到真正的幻想:

echo $$name->$name2; // Echos hi
Run Code Online (Sandbox Code Playgroud)