我正在将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();
}
类中的上述函数无法捕获错误,而是在整个站点上显示错误。
在这种情况下该怎么办?
答案 0 :(得分:2)
您的try / catch块无法拦截异常,原因很简单:类Predis\Network\ConnectionException
不存在,正确的是Predis\Connection\ConnectionException
(see also here)