查找下面的代码,从此查询中创建1和0的数组。目前,$ rows的结果是:
Array ( [discontinued] => 1, ) Array ( [discontinued] => 1 ) Array ( [discontinued] => 0 ) Array ( [discontinued] => 0 ) Array ( [discontinued] => 1 )....
我宁愿有类似的东西:
Array [1] => 1 [2] => 1 [3] => 0 [4] => 0 [5] => 1....
任何人都可以帮助我,我们将不胜感激。 请不要评论代码中的漏洞;我知道它已经存在了。我只是一个初学者......我只是希望它的核心内容能够发挥作用。
干杯! :)
function checkDiscontinued($dbh, $idDiscontinuedArray) {
try {
foreach ($idDiscontinuedArray as $id) {
$stmt = $dbh->query("SELECT discontinued FROM `$id` ORDER BY `date` DESC LIMIT 1");
$rows = $stmt->fetch(PDO::FETCH_ASSOC);
print_r($rows);
}
if ($rows['discontinued'] == TRUE) {
//echo $id . "Action if true";
} else {
changeDiscontinued($dbh, $id, $idDiscontinuedArray);
//echo $id . "Items already discontinued!";
}
}
catch (PDOException $e) {
echo $e->getMessage();
}
}
答案 0 :(得分:2)
如果您希望将$rows
中的值($pdo->fetch()
的结果)进行数字索引,则可以将参数中的提取样式设置为PDO::FETCH_NUM
,而不是PDO::FETCH_ASSOC
:
$rows = $stmt->fetch(PDO::FETCH_NUM);
但是,如果您要查找所有记录的“完整数组”,则可以切换到fetchAll()
,而不是像fetch()
一样提取单个结果:
$rows = $stmt->fetchAll(PDO::FETCH_NUM);