Миграция Symfony 3.0 PHP 5.5 на PHP 7.1: & quot; должен быть установлен ускоритель PHP & gt; Установить и / или включить PHP-ускоритель (настоятельно рекомендуется) & quot ;?

Я хочу обновить PHP5.5 до 7.1 в проекте SYMFONY 3.0.

Я проверял файл «php.ini», чтобы получить правильный результат.

Одна последняя вещь не решена:
Под PHP5.5 я использовал ускоритель расширения php_apcu.dll. Это не поддерживается в PHP7.

Я искал альтернативу, и я прочитал Вот что ускоритель больше не нужен в PHP7, потому что уже встроен в него.

Когда я делаю CLI: «php bin / symfony_requirements», появляется следующее сообщение:

Ускоритель PHP должен быть установлен> Установить и / или включить PHP> ускоритель (настоятельно рекомендуется)

Насколько я понимаю, мне не нужно добавлять новое расширение, но я могу включить каким-то образом ускоритель в PHP7.

Кто-то знает, должен ли параметр «accelerator» быть установлен в «true» в PHP7, или он запускается по умолчанию (и сообщение об ошибке Symfony должно игнорироваться), или новое расширение (отличается от устаревшего APC, как объясняет вики-страница) должен быть установлен?

ОБНОВЛЕНИЕ:
После комментариев, полученных по этому вопросу, я добавил в свой «php.ini» следующую настройку:

opcache.enable=1
opcache.enable_cli=1
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=2000
opcache.revalidate_freq=60
opcache.fast_shutdown=1

Я перезапустил сервис Apache и когда я делаю CLI: «php bin / symfony_requirements», я все равно получаю следующее сообщение:

Ускоритель PHP должен быть установлен> Установить и / или включить PHP> ускоритель (настоятельно рекомендуется)

Обновления относительно @LBA требуется информация:
Я сделал CLI «Обновление композитора» в папке моего проекта Symfony.

Затем, когда я делаю CLI: «php bin / symfony_requirements», я получаю:

Примечание PHP: неправильно сформированное числовое значение, встречающееся в
D: \ Application \ Apache24 \ HTDOCS \ symf \ my_symf_project \ вар \ SymfonyRequirements.php
по линии 759

Примечание: неправильно сформированное числовое значение, встречающееся в
D: \ Application \ Apache24 \ HTDOCS \ symf \ my_symf_project \ вар \ SymfonyRequirements.php
по линии 759

Проверка требований Symfony2 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

PHP использует следующий файл php.ini: D: \ Application \ php7 \ php.ini

Проверка требований Symfony: ……………. W …………… W …….

[OK] Ваша система готова к запуску проектов Symfony2

Дополнительные рекомендации для улучшения вашей настройки
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  • Файл требований должен быть актуальным

    Ваш файл требований устарел. Запустите composer и установите
    перепроверьте свою конфигурацию.

  • должен быть установлен ускоритель PHP

    Установите и / или включите ускоритель PHP (настоятельно рекомендуется).

Примечание. Командная консоль может использовать другой файл php.ini ~~~~
чем тот, который используется с вашим веб-сервером. Быть на
безопасная сторона, пожалуйста, проверьте требования с вашего веб-сайта
сервер с помощью скрипта web / config.php.

О настройке среды (в Windows10):

  1. Раньше я менял переменную окружения «path» на «[расположение папки
    php7] \ php7 \ «и когда я запускаю» php -v «, я получаю:

PHP 7.1.1 (cli) (сборка: 18 января 2017 г., 18:38:49) (ZTS MSVC14 (Visual C ++)
2015) x64) Copyright (c) 1997-2017 PHP Group Zend Engine v3.1.0,
Copyright (c) 1998-2017 Zend Technologies

Файл composer в проекте symfony выглядит так:

    "require": {
"php": ">=5.5.9",
...}

И если я попытаюсь изменить значение на «php»: «> = 7.1.0» и запустить «обновление композитора», это даст:

Загрузка репозиториев композитора с информацией о пакете Обновление
зависимости (включая require-dev) Ваши требования не могут быть
разрешен к устанавливаемому набору пакетов.

Проблема 1
— Этот пакет требует php> = 7.1.0, но ваша версия PHP (5.5.9) не удовлетворяет этому требованию.

Так что с моей переменной окружения с Symfony что-то не так.

Если я сделаю phpinfo()Не в Symfony, а с обычной страницей PHP-сервера, она указана сверху: Версия PHP 7.1.1

5

Решение

Вот решение, 2 вещи, которые мне нужно было сделать:

первый: Это действительно нужно opcache.

в php.ini, кроме того, что настройки, которые проинструктированы сделать в документация Symfony а также Руководство по PHP. Я забыл добавить расширение для использования в php.ini:

zend_extension = «[ваш путь к php7] \ php7 \ ext \ php_opcache.dll»

(ну это в php ручная документация здесь)

второй: На стороне Symfony мне пришлось обновить следующие параметры в [путь к проекту] \ composer.json, чтобы Symfony использовал PHP7:

{
"require": {
"php": ">=7.1.1",
....
},
....
"config": {
"platform": {
"php": "7.1.1"}
},
}
3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]