Главная > PHP | Yii > Yii2: Fatal error, Cannot use 'Object' as class name

Yii2: Fatal error, Cannot use 'Object' as class name

03.11.2017 0 коммент. » Просмотры: 60
 

Yii 2

При обновлении PHP на версию 7.2 столкнулся с ошибкой в "Fatal error, Cannot use 'Object' as class name" в Yii2...

Полный текст ошибки выглядит так:

Fatal error: Cannot use 'Object' as class name as it is reserved in /public_html/vendor/yiisoft/yii2/base/Object.php on line 77

Эта ошибка возникает т.к. в Yii2 версии 2.0.13 для всех родительских классов используется класс Object. В PHP версии 7.2, слово object является зарезервированным и поэтому возникает конфликт. Обсуждение проблемы тут: [PHP7] Consider to deprecate yii\base\Object as object might become soft-reserved #7936

Решение - надо обновить Yii до версии 2.0.13. (commit с исправлением проблемы)

В моем случае, при создании было использовано базовое приложение yii2-app-basic. К сожалению, на текущий момент, оно по прежнему в качестве зависимости использует Yii 2.0.5.

Поэтому, чтобы обновиться, открываем файл /composer.json, который находится в корне проекта, ищем там

и меняем на

теперь выполняем обновление, пишем в консоле

после обновления, ошибка должна пропасть

Автор: | Теги: ,

Важно

У нас заработал ФОРУМ. Все вопросы, которые не касаются статьи, а так же вопросы по конкретно вашему случаю нужно задавать и обсуждать именно там, в разделе "Помощь пользователям".

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Разрешены HTML-теги: <a>, <code>, <i>, <em>, <strong>, <b>, <u>, <strike>