如何知道是否启用了任何 PHP 缓存?

2022-08-30 16:17:08

我曾经认为缓存很难安装,所以我从来没有做过...阅读有关APC的信息后,它似乎很容易安装。我一直认为我必须修改应用程序中的大量PHP代码才能使用它。

无论如何,我想安装APC。我可以使用phpinfo()并注意到它没有在页面上列出,所以它没有安装。这是否也适用于其他各种缓存系统?如果我已经安装了另一个缓存系统,我不想安装APC,因为我不确定它是否会导致冲突。主机会自动为您安装这些吗?

要检查哪些步骤来查看我是否启用了任何类型的缓存?


答案 1

以编程方式检查它:

if(extension_loaded('apc') && ini_get('apc.enabled'))
{
    echo "APC enabled!";
}

注意:从版本5.5开始,PHP现在包含一个操作码缓存/优化器(尽管默认情况下处于禁用状态)。如果您仍然想运行APC,则可以在评论中@alcohol提到APCu扩展。如果您使用的是该扩展名,则需要将extension_loaded('apc')替换为extension_loaded('apcu')。。或者,您可以从命令行验证它:

phpX.Y -i | grep apcu

请确保您使用的是 Web 服务器使用的相同 PHP 二进制文件。


答案 2

任何已安装的缓存扩展都将列在您的phpinfo()文件中;它们应该被列为“配置命令”框中的参数之一(例如-enable-apc),并且应该在页面下方的某个地方有自己的部分。

两个最流行的PHP缓存模块是APC和Memcache。


推荐