如何在应用程序中正确插入 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 中发生的事情。