PHP 中mysql_ping 函数小坑

官方文档是这样介绍的:

mysql_ping() 检查到服务器的连接是否正常。如果断开,则自动尝试连接。本函数可用于空闲很久的脚本来检查服务器是否关闭了连接,如果有必要则重新连接上。如果到服务器的连接可用则 mysql_ping() 返回 TRUE,否则返回 FALSE。

看一眼可能会以为mysql_ping 就两个返回值(TRUE | FALSE),但是实际情况是还有第三个返回值。这个问题官方文档下方是有人评论的,而且是在七年前:(

//When checking if a $resource works...
//be prepared that mysql_ping returns NULL as long as $resource is no correct mysql resource.
$resource =NULL;
var_dump = @mysql_ping($resource);
# showing NULL
//This could be used to decide of a current $resource is a mysql or a mysqli connection when //nothing else is available to do that...

越来越觉着PHP是个玩具型的东西。。。

发表评论

电子邮件地址不会被公开。 必填项已用*标注