web-dev-qa-db-ja.com

Doctrine未定義の関数apc_fetch

私は このチュートリアル を使用しています。これは、CodeIgniterとDoctrineのセットアップ方法についての詳細な説明を提供します。 CodeIgniter 2.1.0とDoctrine 2.2.1を使用していますが、次のエラーが発生します。

致命的なエラー:/Applications/XAMPP/xamppfiles/htdocs/emma_watson_shrine/application/libraries/Doctrine/Common/Cache/ApcCache.phpの52行目の未定義関数Doctrine\Common\Cache\apc_fetch()の呼び出し

あなたは私を助けることができます?

15
H Dindi

PHPのAPC拡張機能を有効にする必要があります。

this ガイドに従ってください。

または、memcacheなどの別のキャッシングドライバーを使用して、Doctrine configをそれに応じて変更することもできます。

doctrineのドキュメント で代替のキャッシュドライバーを確認してください。おそらく最も簡単な解決策は、開発でArrayCacheを使用することです。

12

APCをインストールせずに実行したい場合は、6行目のdoctrine-cli.phpでモードを変更します。

define('ENVIRONMENT', 'production');

define('ENVIRONMENT', 'development');

36〜43行目でDoctrine.phpファイルを開くと、理由がわかります!

4
capu

Php 5.5以降、apcは使用されなくなりました。 apcuをインストールする必要があります。

例えば。

apt install php5.6-apcu

詳細はこちら:

http://php.net/manual/en/opcache.installation.php

また、php 7を使用している場合は、下位互換性モジュールがあります。

apt-get install php7.0-apcu
apt-get install php7.0-apcu-bc

また、このリポジトリを追加する必要があるかもしれません:

apt-add-repository ppa:ondrej/php
apt-get update
4
Henry

キャッシュを使用するには、apc拡張機能をインストールする必要があります。拡張機能をダウンロードしてインストールするだけです。

これはAPCにAPC拡張機能をインストールするのに役立ちます。

http://kvcodes.com/2014/06/solution-call-undefined-function-apc_fetch/

1
varadha

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

0
Kim

Macでこれを取得する人は、 Homebrew を使用してapcuをインストールするだけです。

brew install php56-apcu

(必要に応じて、拡張機能を有効にします)。

0
Sawant