opcache_compile_file
(PHP 5 >= 5.5.5, PHP 7, PHP 8, PECL ZendOpcache > 7.0.2)
opcache_compile_file — 无需运行,即可编译并缓存 PHP 脚本
说明
opcache_compile_file(string
$file
): boolean该函数可以用于在不用运行某个 PHP 脚本的情况下,编译该 PHP 脚本并将其添加到字节码缓存中去。 该函数可用于在 Web 服务器重启之后初始化缓存,以供后续请求调用。
参数
-
file
-
被编译的 PHP 脚本的路径。
返回值
如果 file
被成功编译,则返回 true
或者在失败时返回 false
。
错误/异常
如果文件( file
)不能被载入或者不能被编译,则会生成一个 E_WARNING
级别的错误。
可以使用 @ 来抑制该警告。

User Contributed Notes 1 note
IceNV ¶
4 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.
备份地址:http://www.lvesu.com/blog/php/function.opcache-compile-file.php