雖然 php.ini 的「建議」opcache 設定可能適合生產伺服器,但在您開發時,您會想要變更一些設定,否則您將看不到程式碼的任何變更。在盲目地將其貼到 php.ini 並假設一切都會運作良好之前,請熟悉它們的含義。
OPcache 只能編譯為共享擴充功能。如果您已使用 --disable-all 停用預設擴充功能的建置,則必須使用 --enable-opcache 選項編譯 PHP,OPcache 才能使用。
編譯完成後,您可以使用 zend_extension 組態指令將 OPcache 擴充功能載入 PHP。這可以在非 Windows 平台上使用 zend_extension=/full/path/to/opcache.so
完成,在 Windows 上使用 zend_extension=C:\path\to\php_opcache.dll
完成。
注意:
如果您想搭配 » Xdebug 使用 OPcache,您必須在 Xdebug 之前載入 OPcache。
以下設定通常建議為提供良好效能
opcache.memory_consumption=128 opcache.interned_strings_buffer=8 opcache.max_accelerated_files=4000 opcache.revalidate_freq=60 opcache.fast_shutdown=1 ; prior to PHP 7.2.0 opcache.enable_cli=1
您可能還想考慮停用 opcache.save_comments 並啟用 opcache.enable_file_override,但請注意,您必須在生產環境中使用這些設定之前測試您的程式碼,因為已知它們會破壞某些框架和應用程式,尤其是在使用文件註解的情況下。
在 Windows 上,應該啟用 opcache.file_cache_fallback,並且應該將 opcache.file_cache 設定為已存在且可寫入的目錄。
也提供 OPcache 支援的組態指令完整列表。