Installation

The process of installing OPcache varies depending on which version of PHP
you're running. Please refer to the appropriate section below.

Note:

If you want to use OPcache with
» Xdebug, you must load OPcache before
Xdebug.

PHP 5.5.0 and later

OPcache can only be compiled as a shared extension. If you have
disabled the building of default extensions with
--disable-all
, you must compile PHP with
the --enable-opcache
option for OPcache
to be available.

Once compiled, you can use the
zend_extension configuration
directive to load the OPcache extension into PHP. This can be done with
zend_extension=/full/path/to/opcache.so on non-Windows
platforms, and zend_extension=C:\path\to\php_opcache.dll
on Windows.

You may also want to consider disabling
opcache.save_comments
and enabling
opcache.enable_file_override,
however note that you will have to test your code before using these in
production as they are known to break some frameworks and applications,
particularly in cases where documentation comment annotations are used.

User Contributed Notes 6 notes

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.

In case anyone has segfaults when using Xdebug with OpCache (even after updates, Xdebug after OpCache or other desperate strategies).1. Disable OpCache from beeing loaded2. Install/Enable APCuShould be ok for a development box. On the production box you should use OpCache without Xdebug (as Xdebug slows down PHP ~3x - on our apps at least).