我有一个奇怪的问题。在执行简单的mysql查询时,它返回正确的值,但将 null 添加到数组的末尾。这会导致很多麻烦,因为当我遍历数组时,它会将 null 添加到每个值:
查询
$keyword_results = $conn->prepare("SELECT title,link, position, status FROM keyword_results WHERE keyword_id = :keyword_id");
$keyword_results->bindParam(':keyword_id', $get_keyword_id, PDO::PARAM_INT);
$keyword_results->execute();
打印数组
$db_results = $keyword_results->fetchAll();
print_r($db_results);
结果
Array (
[0] => Array (
[title] => Title
[0] => Title
[link] => http://www.link.com/
[1] => http://www.link.com/
[position] => 1
[2] => 1
[status] => new
[3] => new
)
[1] => Array (
[title] => Title
[0] => Title
[link] => http://www.link.com/
[1] => http://www.link.com/
[position] => 1
[2] => 1
[status] => new
[3] => new
)
) null
可能的原因?
在查询数据库之前,我检查数据库中是否已存在该关键字。我通过使用count(*)执行查询然后将以上代码包装在以下if statement
if($keyword_check->fetchColumn()) {...}
不确定这是不是我能想到的原因......
任何人都知道数组末尾的 null 来自哪里?如果您需要更多信息,请告诉我,我很乐意提供解决此问题所需的一切。
干杯!