1
任何人都可以解释为什么mysql_close()从类析构函数调用失败? mysql_error()报告“连接关闭失败。”php mysql包装类__destruct方法无法关闭数据库
<?php
class Database
{
private $link_id = 0;
private $query_id = 0;
public $error = "";
public $errorNumber = 0;
public $affectedRows = 0;
public function __construct($server, $user, $pass, $database)
{
$this->link_id = @mysql_connect($server, $user, $pass, false);
if (!$this->link_id)
{
$this->DisplayError("Could not connect to server: <b>$this->server</b>.");
die(mysql_error());
}
if([email protected]_select_db($database, $this->link_id))
{
$this->DisplayError("Could not open database: <b>$this->database</b>.");
die(mysql_error());
}
}
public function __destruct()
{
if ($this->link_id)
{
if([email protected]_close($this->link_id))
{
$this->DisplayError("Connection close failed.");
die(mysql_error());
}
}
}
为什么不把它的“@”关掉,让它实际记录问题而不是掩盖它? – dkamins 2011-06-03 00:15:44
'mysql_error()'报告什么? – Phil 2011-06-03 00:16:26
@dkamins我正在使用自定义错误处理程序。 – Kevin 2011-06-03 00:18:00