每一次执行 PHP 脚本的时候,该脚本都需要被编译成字节码,而 OPcache 可以对该字节码进行缓存,这样,下次请求同一个脚本的时候,该脚本就不需要重新编译,这极大节省了脚本的执行时间,从而让应用运行速度更快,同时也节省了服务器的开销。
Opcache 默认是关闭的。
在php.ini文件中,找到 [opcache]修改如下配置 [opcache] ; //Appserv默认没有此项配置,自己添加 zend_extension = "C:/AppServ/php7/ext/php_opcache.dll" ; //1-启用 0-关闭 opcache.enable=1 ; //这个配置表示你想要分配给 OPcache 的内存空间(单位:MB),设置一个大于 64 的值即可。(默认为64) opcache.memory_consumption=64 ; //这个配置表示你想要分配给实际字符串的空间(单位:MB),设置一个大于 16 的值即可。(默认为4) opcache.interned_strings_buffer=16 ; //这个配置表示可以缓存多少个脚本,将这个值尽可能设置为与项目包含的脚本数接近(或更大)。(默认为2000) opcache.max_accelerated_files=20000 ; //改配置值用于重新验证脚本,如果设置为 0(性能最佳),需要手动在每次 PHP 代码更改后手动清除 OPcache。 ; //如果你不想要手动清除,可以将其设置为 1 并通过 opcache.revalidate_freq 配置重新验证间隔, ; //这可能会消耗一些性能,因为需要每隔 x 秒检查更改。 ; //设置为 0 时,如果修改过 PHP代码 必须手动重置OPcache或重新启动 webserver 以使其生效。 opcache.validate_timestamps=0配置完成后,可以使用如下代码查询opcache:
<?php phpinfo(); ?>访问页面得到如下界面,则证明开启成功