我在使用pdo的mysql上进行查询,该查询返回找到的记录数,为此,我在查询中使用COUNT(*),并在fetchColumn()处获取末尾的信息。
我试图做的是检查查询是否得到结果,并在两种情况下在屏幕上显示一条消息。
这是我的mysql代码:
public static function GetTAKE_OVER_OrdersTotalQueriesCOUNT($connection)
{
if (isset($connection)) {
try {
$sql = "SELECT COUNT(*) AS num_rows FROM take_over";
$sentence = $connection ->prepare($sql);
$sentence -> execute();
$result = $sentence->fetchColumn();
} catch (PDOException $ex) {
print 'ERROR' . $ex -> getMessage();
}
}
return $result;
}
这是我调用该函数的代码:
$Result20 = OrderModel::GetTAKE_OVER_OrdersTotalQueriesCOUNT(Connection::GetConnection());
if ($Result20[0][0] !== 0)
{
echo "There is nothing to display";
}
else
{
echo "There is something to display";
}
问题是两个消息均显示。就像条件不起作用一样,因为它输入了if和else。
我尝试做一个print_r($ Result20),它向我显示了这一点:
Array ( [0] => Array ( [num_rows] => 0 [0] => 0 ) )
所以,我不知道我在mysql查询中是否做错了什么,或者if-else条件是否做错了。
您能帮我找到错误并解决吗?