2015-12-30 35 views
10

Ich habe Probleme mit PHP7 und APCu. Nach der Installation ich diesen Fehler hätte:Symfony/PHP7 APC -> APCu

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

APCU ist zu 100% aktiviert, ich sehe es in den phpinfo(); Und wenn ich apcu_fetch() versuche es funktioniert.

Wie wird APCu in Symfony 2.8 verwendet?

+0

Opcache verfügbar ist, gebaut in PHP seit 5.5, könnte es sich interessieren. – Devon

+0

Ja, aber APCu ist besser für Symfony. –

+0

Erhalten Sie diesen Fehler in der Befehlszeile oder auf dem Client, der mit fpm verbindet? Anway nur daran erinnern, wenn Sie diesen Fehler auf der Kommandozeile erhalten, können Sie verpassen php.ini kann anders sein durch fpm und cli – FZE

Antwort

6

Diese Antwort ist obsolet. Die richtige Antwort ist diejenige von François Breton.

In PHP 7 müssen Sie ein zusätzliches Modul zu Ihrem PHP-Setup hinzufügen: apc.so Dies ist ein Modul, das Rückwärtskompabilität zu apc für apcu ermöglicht. Dies ist eine Art verwirrende ...

Siehe http://php.net/manual/de/apcu.installation.php für weitere Informationen. Wenn Sie Pakete von https://deb.sury.org/ (ondrej ppa) verwenden, können Sie es über apt-get install php-apcu-bc installieren.

+0

Könnten Sie bitte Ihre Antwort in wie erweitern das Modul hinzufügen? – k0pernikus

+0

Dieser Link enthält nicht viele Informationen. – Henry

16

Sie können Lehre aktualisieren, zumindest seine Lehre/Cacheabhängigkeit (> = 1.6) APCU unterstützt jetzt :-)

+3

Bestätigt. Ändern Sie einfach alle Ihre Konfigurationen, in denen Sie apc haben, zum Beispiel 'metadata_cache_driver: apcu' – jrjohnson

+2

Dies sollte die akzeptierte Antwort sein. –

1

Wenn Sie Ubuntu verwenden:

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

Diese Antwort enthält die Lösung, die für mich funktionierte. Sei gut, wenn du es ein bisschen mehr ausmodellierst. Danke. – Henry