Intereting Posts
htaccess rewriterule и после слэш хотите ввести что-то Удаление неиспользуемого CSS с кода сайта MySQL и PHP Параметр 1 как ресурс MySQL UDF, который выполняет поиск и замену REGEX Включение удаленного файла php в качестве ресурса MySQL Связанные подзапросы Отключить брандмауэр безопасности в тестовой среде на Symfony2 отправлять только полевые поля. если пустые, то не отправляйте по электронной почте. php для отправки по электронной почте Пакет SCORM не связывается с LMS Как группировать разные форумы в категории PHP ZF2 Как получить последнее значение идентификатора вставки? Показать запрос в строке таблицы (th) Неустранимая ошибка: превышено максимальное время выполнения 400 секунд Как запустить (или запустить) Composer на Openshift? Блокирование входа пользователя с определенным уровнем разрешений, а затем отображение предупреждений, чтобы сообщить им, почему

Что означает синтаксис PHP $ var1 -> $ var2?

В чем объясняется следующий синтаксис?

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

Related of "Что означает синтаксис PHP $ var1 -> $ var2?"

Вы вызываете свойство в $var1 , имя которого совпадает с значением $var2 .

Например:

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

$var1 – это объект.

$var2 – это (возможно) имя переменной внутри $var1 .

Если $var2="test"; это оценивается так:

 $var1->test; 

Вы можете сделать это со всеми вещами:

 $test = array(); $name="test"; print_r($$name); // Prints array(); $test = new stdClass; $test->hello = "hi"; $name2="hello"; echo $test->$name2; // Echos hi 

Вы даже можете по-настоящему представить:

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

Это означает динамический запрос свойства в объекте.

 class A { public $a; } // static property access $ob = new A; $ob->a = 123; print_r($ob); // dynamic property access $prop = 'a'; $ob->$prop = 345; // effectively $ob->a = 345; print_r($ob); 

поэтому $var1 является экземпляром некоторого объекта, -> означает доступ к члену этого объекта, а $var2 содержит имя свойства.