0
嗯,我只是尝试以下两个小时左右,我不能得到它的工作。以下代码将始终返回“0”。请问任何人都可以看到问题在哪里。这应该是一种魅力。而在PhpMyAdmin中,当我运行该语句时,它可以正常工作。PHP PDO Data_length总是返回“0”
实际上,这是来自另一个问题的复制/粘贴代码,它被接受为工作答案。检查出来here。
编辑: 没有错误使用抛出: error_reporting(-1);
和 PDO::ERRMODE_EXCEPTION
。
UPDATE: 肯定地说,我从查询,其中Data_lenght
为“0”只获得了第一排。我也测试了fetchAll
,并试图在获取时访问Data_length
索引。没有运气。
<!DOCTYPE html>
<head>
<title></title>
</head>
<body>
<?php
try {
error_reporting(-1);
$host_name = "my_hsot";
$database = "my_db";
$user_name = "my_user";
$password = "my_pwd";
$conn = new PDO("mysql:host=$host_name;dbname=$database", $user_name, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sth = $conn->query('SHOW TABLE STATUS');
$dbSize = 0;
$row = $sth->fetch(PDO::FETCH_ASSOC);
$dbSize = $row["Data_length"];
$decimals = 2;
$mbytes = round($dbSize/(1024*1024),$decimals);
echo $dbSize . "\n" . $row["Data_length"];
} catch (PDOException $e) {
echo 'Connection failed: ' . $e->getMessage();
}
?>
</body>
</html>
任何帮助表示赞赏。