Ошибка комментариев PHP 8

В предыдущей версии PHP у нас были комментарии кода, написанные как

#[Socket panel]

После обновления до PHP 8 мы получаем ошибку

syntax error, unexpected identifier "panel", expecting "]"

Это ошибка в новом PHP 8 или я что-то упустил? Есть ли какое-либо решение для поддержки старых комментариев.


person Arun Verma    schedule 02.02.2021    source источник
comment
В PHP 8 это не комментарии, а атрибуты атрибуты.   -  person Remy    schedule 02.02.2021
comment
Отвечает ли это на ваш вопрос? Могу ли я использовать знак решетки (#) для комментариев в PHP?   -  person El_Vanja    schedule 02.02.2021
comment
Принятый ответ в дубликате был обновлен, чтобы отразить атрибуты.   -  person El_Vanja    schedule 02.02.2021
comment
Понял, найду и заменю все :)   -  person Arun Verma    schedule 02.02.2021


Ответы (2)


В PHP 8 у вас теперь есть атрибуты, которые используются в следующем стиле #[Testclass], поэтому вы получаете эту ошибку.

https://stitcher.io/blog/attributes-in-php-8

Вы должны изменить эти комментарии на другой стиль.

person René Höhle    schedule 02.02.2021
comment
я пропустил это изменение - person Arun Verma; 02.02.2021

В новом PHP 8 это не комментарии, а атрибуты.

Они изменили синтаксис атрибута с <<attr>> на #[attr]. (См. это.)

person Aezign Space    schedule 02.02.2021
comment
На самом деле результатом этого RFC было изменение с <<attr>> на @@attr; затем был еще один RFC, который изменил его на #[attr] после долгие дебаты и около десятка различных предложений. Но все это было до версии 8.0.0, так что все, что нужно знать, это то, что #[attr] — это синтаксис, который фактически был выпущен. - person IMSoP; 03.02.2021