Как получить доступ к атрибуту объекта, который начинается с числа?

Я работаю над существующей базой кода и возвратил объект с атрибутом, который начинается с числа, которое я могу увидеть, если я вызову print_r на объекте.

Скажем, это $Beeblebrox->2ndhead . Когда я пытаюсь получить к нему доступ, я получаю сообщение об ошибке:

 Parse error: syntax error, unexpected T_LNUMBER, expecting T_STRING or T_VARIABLE or '{' or '$' 

Как я могу получить этот атрибут?

Solutions Collecting From Web of "Как получить доступ к атрибуту объекта, который начинается с числа?"

Как насчет этого :

 $Beeblebrox->{'2ndhead'} 

Фактически, вы можете сделать это практически для любой переменной – даже для тех, которые не являются свойствами класса.

Например, вы могли бы подумать о имени переменной, которое содержит пробелы; следующий синтаксис будет работать:

 ${"My test var"} = 10; echo ${"My test var"}; 

Даже если, очевидно, вы не сможете сделать ничего подобного:

 $My test var = 10; echo $My test var; 

Не знаю, как это работает внутри, хотя … И после небольшого поиска я ничего не могу найти об этом в руководстве по PHP.

Единственное, что я могу найти о {} и переменных, здесь: Variable parsing – но не совсем связанный с текущим субъектом …

Но вот статья, которая показывает пару других возможностей, и идет дальше, чем примеры, которые я написал здесь: PHP Variable Names: Curly Brace Madness

И вот еще один, который дает некоторую дополнительную информацию о том, как они анализируются: грамматические заметки PHP

Я действительно узнал ответ от коллеги, прежде чем я спросил об этом, но не смог найти его в Google, поэтому я хотел бы опубликовать его здесь, если у других проблема такая же.

Я могу получить доступ к этому атрибуту следующим образом:

 $Beeblebrox->{'2ndhead'} 

На самом деле не имеет законного наличия атрибута или переменной, которая начинается с числа, но так или иначе такая динамическая ссылка, как это делает возможным. Кажется, это странная лазейка для меня.