php 关闭redis连接,PHP 中使用 connect 和 pconnect 连接 Redis ,在手动 close 后,为什么都无法关闭连接?...
PHP 中使用connect和pconnect连接Redis,在手动close后,为什么都无法关闭连接?在手动close后,仍然可以使用Redis实例操作Redis,请问这是什么原因?网上的文章,例如:http://starsea.github.io/post…https://blog.csdn.net/qmhball…等等文章,都说在close后,继续操作redis就会报错,但是我自己测试后发现
PHP 中使用
connect
和
pconnect
连接
Redis
,在手动
close
后,为什么都无法关闭连接?
在手动
close
后,仍然可以使用
Redis
实例操作
Redis
,请问这是什么原因?
网上的文章,例如:
http://starsea.github.io/post…
https://blog.csdn.net/qmhball…
等等文章,都说在
close
后,继续操作
redis
就会报错,
但是我自己测试后发现
无论是在
Windows
的环境下,还是
Linux
的环境下,手动
close
后仍然可以继续使用
Redis
的实例,操作数据。
例如类似如下代码:
网上的文章,运行后会进入
catch
中,但是我的环境能够正常输出,不会进入
catch
<?php
$rds = new Redis();
try {
$ret = $rds->pconnect("127.0.0.1", 6379);
if ($ret == false) {
echo "Connect return false";
exit;
}
var_dump($rds->get('k1'));
$rds->close();
var_dump($rds->get("k2"));
} catch (Exception $e) {
var_dump ($e);
}
在我的环境中运行上面的 php 文件,会输出如下图中的结果:
请问这是什么原因?怎么解释?
我在 Laravel 5.6 的框架中也测试了,结果也是同样的。
我的
Redis
版本是
4.0.11
我的
php-redis
扩展的版本是
4.2.0
之后把扩展升级到了最新版
5.0.2
,结果还是一样,不会进入
catch
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)