Symfony / PHP7 APC -> APCu

Symfony / PHP7 APC -> APCu

我对 PHP7 和 APCu 有疑问。安装后出现此错误:

Fatal error: Call to undefined function Doctrine\Common\Cache\apc_fetch()

APCu 已 100% 启用,我在 phpinfo(); 中看到它并且当我尝试 apcu_fetch() 它有效。

如何在 Symfony 2.8 中使用 APCu?

此答案已过时。正确答案是 François Breton 的答案。

在 PHP 7 中,您必须在 PHP 设置中添加一个额外的模块:apc.so 这是一个使 apc 向后兼容 apc 的模块。 这有点令人困惑...

有关详细信息,请参阅 http://php.net/manual/de/apcu.installation.php

如果您使用来自 https://deb.sury.org/ (ondrej ppa) 的软件包,您可以通过 apt-get install php-apcu-bc.

安装它

你可以更新 Doctrine,至少它的 doctrine/cache 依赖项 (>= 1.6) APCu 现在支持:-)

如果你使用ubuntu:

sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get install php-apcu-bc

在 MacOS 上,使用 pecl 是一种单命令解决方案(在 brew install php@7.1 之后):

pecl install apcu

正在下载 apcu-5.1。17.tgz ...
[...]
安装'/usr/local/Cellar/php@7.1/7.1.27/pecl/20160303/apcu.so'
安装成功:channel://pecl.php.net/apcu-5.1.17
php.ini

中启用了扩展程序 apcu