【问题标题】:Is OPcache caches required and included php files too?是否需要 OPcache 缓存并包含 php 文件?
【发布时间】:2019-09-09 00:59:40
【问题描述】:

我有许多类和 php 文件包含在另一个 php 文件中。我使用 OPcache,但我怀疑它不会缓存所有包含的 php 文件。真的吗?如果是,那么如何打开这个文件缓存呢?

【问题讨论】:

    标签: php opcache


    【解决方案1】:

    通常我们使用 Opcache 来缓存编译后的操作码,这样当同一个脚本运行时,它就不会再次编译脚本并从缓存中提供它。

    为此,您必须在 php.ini 中启用 Opcache,这将影响您的整个应用程序。

    opcache.enable = 1;

    如果您想在脚本到脚本的基础上实现这一点,则无需在 php.ini 中启用,而是可以使用 ini.set() 方法进行设置。

    现在,当您想使用从 PHP 7.0 开始提供的 Opcache 启用页面缓存时,您可以通过在 php.ini 上启用此功能或使用 ini.set() 并设置缓存目录来实现,如下所示。

    opcache.file_cache = “cache_directory”;

    【讨论】:

      【解决方案2】:

      这正是 OPcache 的用途。它缓存所有包含的文件(php 和其他:css、tpl 等)。

      如果您对某个文件没有被缓存有疑问,只需检查函数opcache_get_status() 的输出,它将为您提供有关缓存的全面报告,包括每个缓存文件的信息。

      <?php
      
      echo '<pre>';
      print_r( opcache_get_status() );
      echo '</pre>';
      

      【讨论】:

        猜你喜欢
        • 2014-06-29
        • 2021-10-29
        • 1970-01-01
        • 1970-01-01
        • 2015-01-12
        • 2017-10-01
        • 2016-10-19
        • 2011-12-15
        • 2015-04-05
        相关资源
        最近更新 更多