International PHP Conference Berlin 2025

opcache_compile_file

(PHP 5 >= 5.5.5, PHP 7, PHP 8, PECL ZendOpcache > 7.0.2)

opcache_compile_fileCompiles and caches a PHP script without executing it

Description

opcache_compile_file(string $filename): bool

This function compiles a PHP script and adds it to the opcode cache without executing it. This can be used to prime the cache after a Web server restart by pre-caching files that will be included in later requests.

Parameters

filename

The path to the PHP script to be compiled.

Return Values

Returns true if filename was compiled successfully or false on failure.

Errors/Exceptions

If filename cannot be loaded or compiled, an error of level E_WARNING is generated. You may use @ to suppress this warning.

See Also

add a note

User Contributed Notes 1 note

up
18
IceNV
7 years ago
Be aware that opcache will only compile and cache files older than the script execution start.

For instance, if you use a script to generate cache files (e.g. you don't have access to shmop and rely on opcache for in-memory data caching instead), opcache_compile_file will not include the generated file in the cache, because its modification time is after the script start.

The workaround is to use touch() to set a date before the script execution date, then opcache will compile and cache the generated file.
To Top