我正在使用本教程,它详细解释了如何设置CodeIgniter和Doctrine。我使用CodeIgniter 2.1.0和条令2.2.1,但我得到了这个错误:
致命错误:调用第52行/Applications/XAMPP/examplefiles/htdocs/emma_watson_shrine/application/librarys/Doctrine/Common/Cache/ApcCache.php中未定义的函数
DoctrineCommonCacheapc_fetch()
你能帮我吗?
您需要为PHP启用APC扩展。
请遵循本指南。
或者,您可以使用不同的缓存驱动程序,如memcache,并根据它更改Doctrine配置。
查看条令文档中的备用缓存驱动程序。也许最简单的解决方案是在开发中使用ArrayCache。
由于不再使用php 5.5 apc。你应该安装apcu。
例如
apt install php5.6-apcu
更多信息请点击此处:
http://php.net/manual/en/opcache.installation.php
对于那些使用php7的用户,有一个向后兼容性模块:
apt-get install php7.0-apcu
apt-get install php7.0-apcu-bc
此外,您可能需要添加以下存储库:
apt-add-repository ppa:ondrej/php
apt-get update
如果您不安装APC,只想运行它,那么在第6行的doctrine-cli.php中,更改模式:
define('ENVIRONMENT', 'production');
至
define('ENVIRONMENT', 'development');
打开Doctrine.php文件,在第36~43行,你会发现原因!
您需要安装apc扩展才能使用缓存。所以只需下载扩展并安装即可。
这将帮助您在apache上安装APC扩展。
http://kvcodes.com/2014/06/solution-call-undefined-function-apc_fetch/
对于任何在Mac上获得此功能的人,只需使用Homebrew:安装apcu
brew install php56-apcu
(如果需要,请启用扩展)。
在OSX上,我必须运行:
pecl channel-update pecl.php.net
pecl install apcu-4.0.11
为PHP 5.6 安装
https://getgrav.org/blog/macos-mojave-apache-mysql-vhost-apc