如何在应用程序中正确插入 opcache_compile_file?
How to insert crrectly opcache_compile_file inside application?
1/ 我对缓存一无所知,但我想知道用 opcache_compile_file
;
编写这段代码是否正确
2/ 如何检查opcache
是否退出?
$filename = 'toto.php;
if (is_file($filename)) {
ob_start();
opcache_compile_file($filename);
$new_prods_content .= ob_get_clean();
} else {
echo CLICSHOPPING::getDef('template_does_not_exist') . '<br /> ' . $filename;
exit;
}
您的第一行缺失 '
。它应该是:
$filename = 'toto.php';
接下来,opcache_compile_file()
本身只编译缓存了一个PHP脚本,并没有执行。参见 here. If you need to actually execute the script, you have to include it (e.g. using include
/include_once
or require
/require_once
)。
要检查 opcache 是否已加载和启用,您可以这样做:
if (
function_exists('opcache_get_status') &&
($opcache_status = opcache_get_status()) &&
$opcache_status['opcache_enabled']
) {
// opcache is enabled
}
最后,如果加载了 opcache,它可能已经为您的所有 Web 脚本启用,因此您根本不需要手动编译脚本。您可以使用 opcache-gui 深入了解 opcache 中发生的事情。
1/ 我对缓存一无所知,但我想知道用 opcache_compile_file
;
2/ 如何检查opcache
是否退出?
$filename = 'toto.php;
if (is_file($filename)) {
ob_start();
opcache_compile_file($filename);
$new_prods_content .= ob_get_clean();
} else {
echo CLICSHOPPING::getDef('template_does_not_exist') . '<br /> ' . $filename;
exit;
}
您的第一行缺失 '
。它应该是:
$filename = 'toto.php';
接下来,opcache_compile_file()
本身只编译缓存了一个PHP脚本,并没有执行。参见 here. If you need to actually execute the script, you have to include it (e.g. using include
/include_once
or require
/require_once
)。
要检查 opcache 是否已加载和启用,您可以这样做:
if (
function_exists('opcache_get_status') &&
($opcache_status = opcache_get_status()) &&
$opcache_status['opcache_enabled']
) {
// opcache is enabled
}
最后,如果加载了 opcache,它可能已经为您的所有 Web 脚本启用,因此您根本不需要手动编译脚本。您可以使用 opcache-gui 深入了解 opcache 中发生的事情。