最后它奏效了。以一种非常奇怪的方式,在我更改了 pdo 连接语句的属性顺序后建立了连接。
这是更改前的连接(我从http://php.net/manual/en/pdo.connections.php执行此命令):
try {
$db = new PDO('mysql:host='.$db_host.';dbname='.$db_name.'', $db_user, $db_pass);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$db->exec("set names utf8");
} catch(PDOException $e) {
echo 'ERROR: ' . $e->getMessage();
}
然后我尝试像这样更改它的顺序:
try {
$db = new PDO('mysql:dbname='.$db_name.';host='.$db_host.'', $db_user, $db_pass);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$db->exec("set names utf8");
} catch(PDOException $e) {
echo 'ERROR: ' . $e->getMessage();
}
现在它起作用了。我猜这个问题来自托管公司。