Как избавиться от фатальной ошибки в руководстве по началу работы с Zend Framework 3?

Я пытался пройти учебник "Начало работы" для Zend Framework 3. Все шло хорошо, но как только я перешел к "Формам и действиям", вещи перестали работать.

Учебное пособие находится здесь: https://docs.zendframework.com/tutorials/getting-started/forms-and-actions/

Это ошибка, которую я продолжаю получать:

Неустранимая ошибка: объявление Zend\Form\Form::bindValues ​​(массив $values ​​= Array) должно быть совместимо с Zend\Form\Fieldset::bindValues ​​(массив $values ​​= Array,? Array $validationGroup = NULL) в...\zendtest\vendor\zendframework\zend-form\src\Form.php в строке 24

Я получаю это после того, как я создал AlbumForm.php, реализовал InputFilterAwareInterface в Album.php, создал скрипт представления add.phtml и скопировал необходимую логику в AlbumController.php. Все было скопировано из учебника.

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

Кто-нибудь имеет представление о том, что я могу делать неправильно?

1 ответ

Решение

Ошибка вызвана несоответствием определений метода "bindValues" между дочерним классом "Zend\Form\Form" и его родительским "Zend\Form\Fieldset".

Определение "Zend \ Form \ Fieldset" было изменено с версии 2.9.1( ссылка на github), но для "Zend\Form\Form" с версии 2.11.0( ссылка на github).

Возможно, вы установили выпуск между этими версиями>=2.9.1 и < 2.11.0. Запустите обновление composer в корне скелета, чтобы получить последний выпуск (в настоящее время - 2.11.0) пакета формы Zend:

composer update

или же

php /path/to/composer.phar update
Другие вопросы по тегам