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 $filename): bool

此函数编译 PHP 脚本并将其添加到操作码缓存中,而不执行它。这可用于在 Web 服务器重启后预缓存将在后续请求中包含的文件,从而预热缓存。

参数

filename

要编译的 PHP 脚本的路径。

返回值

如果 filename 成功编译,则返回 true;如果失败,则返回 false

错误/异常

如果无法加载或编译 filename,则会生成级别为 E_WARNING 的错误。您可以使用 @ 来抑制此警告。

参见

添加说明

用户贡献的说明 1 个说明

IceNV
6 年前
请注意,opcache 仅会编译和缓存比脚本执行开始时间早的文件。

例如,如果您使用脚本生成缓存文件(例如,您无法访问 shmop 而是依赖 opcache 进行内存中数据缓存),opcache_compile_file 不会将生成的文件包含在缓存中,因为它的修改时间在脚本启动之后。

解决方法是使用 touch() 在脚本执行日期之前设置日期,然后 opcache 会编译和缓存生成的文件。
To Top