Installation

OPcache peut seulement être compilé comme une extension partagée. Si vous avez désactivé la compilation des extensions par défaut avec --disable-all, vous devez compiler PHP avec l'option --enable-opcache pour que OPcache soit disponible.

Une fois compilé, vous pouvez utiliser la directive de configuration zend_extension pour charger l'extension OPcache dans PHP. Ceci peut être réalisé avec zend_extension=/full/path/to/opcache.so sur les plateformes non-Windows, etzend_extension=C:\path\to\php_opcache.dll sur Windows.

Note:

Si vous voulez utiliser OPcache avec » Xdebug, vous devez charger OPcache avant Xdebug.

Configuration php.ini recommandée

La configuration suivante est généralement recommandée, vu qu'elle fournit un bon gain en terme de performance :

opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
opcache.fast_shutdown=1 ; antérieur à PHP 7.2.0
opcache.enable_cli=1

Vous pourriez également vouloir désactiver opcache.save_comments et activer opcache.enable_file_override, cependant, notez que vous devez tester votre code avant de l'utiliser en production, sachant qu'il peut casser des frameworks et des applications, en particulier dans le cas où les annotations des commentaires de documentations sont utilisées.

Sur Windows, opcache.file_cache_fallback devrait être activé, et opcache.file_cache devrait être définie à un dossier écrivable déjà existant.

Une liste complète de directives de configuration supportées par OPcache est également disponible.

add a note

User Contributed Notes 2 notes

up
37
NoiseEee
10 years ago
While the "suggested" opcache settings for php.ini might be appropriate for a production server, you're going to want to change several while you're developing, or you're not going to see any changes to your code. Get familiar with what they mean before blindly pasting that into php.ini and assuming things are going to work well.
up
20
stchr
3 years ago
Please note that opcache.fast_shutdown was removed in PHP 7.2
To Top