PHP 不要关闭 MySQL 连接
PHP do not close MySQL connection
我正在使用 WAMP 服务器并且我有一个简单的 PHP 脚本:
include_once ('../lib/conecData.php');
$res=mysql_connect(DB_HOST,DB_USER,DB_PASS);
mysql_select_db(DB_NAME);
$sql = "SELECT * FROM `table` ORDER BY `day` DESC";
$result = mysql_query ($sql, $res);
mysql_close($res);
if ($res) echo "Still Alive"; else echo "Closed";
结果:
Still Alive
我试过:
1./----
if($res == false){
echo "Closed";
} else {
echo "Still Alive";
}
2./----
$closed = mysql_close($res);
if ( !$closed ) echo "Still Alive"; else echo "Closed";
3./----
if ( mysql_close($res)) echo "Still Alive"; else echo "Closed";
和
mysql_close();
运气不好,结果一样。-
为什么要连接数据库?我需要更改服务器配置上的某些内容吗?这有什么问题吗?
$res
是一个 mysql 句柄。该句柄中的值是 NOT,您可以使用它来测试连接是打开还是关闭。关闭连接不会删除句柄,$res 中的任何内容都将保留 - 并且是 "non-false" 值。
换句话说,您正在测试一个完全无用的值,因为它无法被测试。
如果您想确认连接已关闭,则
$status = mysql_ping($res);
如果连接打开,$status
将为 TRUE,否则为 false。
我正在使用 WAMP 服务器并且我有一个简单的 PHP 脚本:
include_once ('../lib/conecData.php');
$res=mysql_connect(DB_HOST,DB_USER,DB_PASS);
mysql_select_db(DB_NAME);
$sql = "SELECT * FROM `table` ORDER BY `day` DESC";
$result = mysql_query ($sql, $res);
mysql_close($res);
if ($res) echo "Still Alive"; else echo "Closed";
结果:
Still Alive
我试过: 1./----
if($res == false){
echo "Closed";
} else {
echo "Still Alive";
}
2./----
$closed = mysql_close($res);
if ( !$closed ) echo "Still Alive"; else echo "Closed";
3./----
if ( mysql_close($res)) echo "Still Alive"; else echo "Closed";
和
mysql_close();
运气不好,结果一样。- 为什么要连接数据库?我需要更改服务器配置上的某些内容吗?这有什么问题吗?
$res
是一个 mysql 句柄。该句柄中的值是 NOT,您可以使用它来测试连接是打开还是关闭。关闭连接不会删除句柄,$res 中的任何内容都将保留 - 并且是 "non-false" 值。
换句话说,您正在测试一个完全无用的值,因为它无法被测试。
如果您想确认连接已关闭,则
$status = mysql_ping($res);
如果连接打开,$status
将为 TRUE,否则为 false。