繁体   English   中英

Symfony 3.0 迁移 PHP 5.5 到 PHP 7.1:“应该安装 PHP 加速器 > 安装和/或启用 PHP 加速器(强烈推荐)”?

[英]Symfony 3.0 migration PHP 5.5 to PHP 7.1 : "A PHP accelerator should be installed > Install and/or enable a PHP accelerator (highly recommended)"?

我想在 SYMFONY 3.0 项目中将 PHP5.5 升级到 7.1。

我一直在检查“php.ini”文件以获得正确的结果。

最后一件事没有解决:在 PHP5.5 下,我使用了扩展加速器php_apcu.dll 这在 PHP7 中没有维护。

我一直在寻找替代方案,我在这里读到 PHP7 中不再需要加速器,因为它已经嵌入其中。

当我执行 CLI:“php bin/symfony_requirements”时,会出现以下消息:

应安装 PHP 加速器 > 安装和/或启用 PHP > 加速器(强烈推荐)

据我了解,我不需要添加新的扩展,但我可以在 PHP7 中以某种方式启用加速器。

有人知道是否需要在 PHP7 中将“加速器”参数设置为“true”,还是默认运行(并且应该忽略 Symfony 错误消息)或新扩展(不同于已弃用的 APC 作为 wiki 页面解释)应该安装?

更新:在收到关于我添加到“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 所需信息的更新:我在我的 Symfony 项目的文件夹中做了一个 CLI “composer update”。

然后,当我执行 CLI:“php bin/symfony_requirements”时,我得到:

PHP 注意:在第 759 行的 D:\Application\Apache24\htdocs\symf\my_symf_project\var\SymfonyRequirements.php 中遇到了格式不正确的数值

注意:在第 759 行的 D:\Application\Apache24\htdocs\symf\my_symf_project\var\SymfonyRequirements.php 中遇到了格式不正确的数值

Symfony2 需求检查器 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

PHP 正在使用以下 php.ini 文件:D:\Application\php7\php.ini

检查 Symfony 要求:................W................W.......

[OK] 您的系统已准备好运行 Symfony2 项目

改进设置的可选建议~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~

  • 需求文件应该是最新的

    您的需求文件已过时。 运行 composer install 并重新检查您的配置。

  • 应安装 PHP 加速器

    安装和/或启用 PHP 加速器(强烈推荐)。

注意 命令控制台可以使用与您的 Web 服务器使用的不同的 php.ini 文件 ~~~~。 为了安全起见,请使用 web/config.php 脚本检查您的网络服务器的要求。

关于环境的设置(Windows10):

  1. 以前,我用“[php7 的文件夹位置]\php7\”更改了我的“路径”环境变量,当我启动“php -v”时,我得到:

PHP 7.1.1 (cli) (build: Jan 18 2017 18:38:49) (ZTS MSVC14 (Visual C++ 2015) x64) Copyright (c) 1997-2017 The PHP Group Zend Engine v3.1.0, Copyright (c) 1998 -2017 Zend科技

symfony 项目中的 composer 文件如下所示:

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

如果我尝试将值更改为 "php":">=7.1.0" 并启动 "composer update" 它给出:

使用包信息加载作曲家存储库更新依赖项(包括 require-dev)您的需求无法解析为可安装的包集。

问题 1 - 此软件包需要 php >=7.1.0,但您的 PHP 版本 (5.5.9) 不满足该要求。

所以我的 Symfony 环境变量有问题。

如果我做phpinfo() ,而不是在 Symfony 中,而是使用常规的 PHP 服务器页面,它会在顶部声明: PHP 版本 7.1.1

这是解决方案,我需要做两件事:

第一:它确实需要opcache

php.ini中,除了symfony 文档php 手册中指示要做的设置之外。 我忘记添加要在php.ini中使用的扩展名:

zend_extension="[你的 php7 路径]\php7\ext\php_opcache.dll"

(嗯,它在这里的 php 手册文档中)

第二:在 symfony 方面,我必须更新 [project path]\composer.json 中的以下设置,以确保 Symfony 使用 PHP7:

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM