如何使用PHP中的Predis库检查redis服务器是否正在运行

时间:2016-06-06 10:47:07

标签: php exception redis predis

我正在将Redis缓存与我的一个网站集成,我使用Predis作为客户端。我已经创建了一个用于初始化的静态类。

我需要检查redis服务器是否正在运行。

我已经尝试了很多这些但是它没有用,它无法捕捉异常。

我的代码是

public static function checkRedisConnection()
{
    self::initialize();
    $client = new Predis\Client();
    try
    {
        $client->connect();
    }
    catch (Predis\Network\ConnectionException $exception)
    {
        exit("whoops, couldn't connect to the remote redis instance!");
    }

    $client->info();
}

类中的上述函数无法捕获错误,而是在整个站点上显示错误。

在这种情况下该怎么办?

1 个答案:

答案 0 :(得分:2)

您的try / catch块无法拦截异常,原因很简单:类Predis\Network\ConnectionException不存在,正确的是Predis\Connection\ConnectionExceptionsee also here