我成功地填充了一个JSON编码的数组,如下所示:
$profanityText = json_encode($pds->fetchAll(PDO::FETCH_ASSOC));
稍后我想循环浏览这些数据,并执行以下操作:
$profanityTextArray = json_decode($profanityText);
foreach ($profanityTextArray as $key => $jsons) {
print_r($jsons);
}
当我使用print_r($jsons(时,我得到以下输出:
stdClass Object
(
[apple] => yes
[peach] => yes2
[banana] => no
)
(
[apple] => yes
[peach] => yes2
[banana] => no
)
这也很好。问题是我不知道如何在foreach循环中访问各个元素。我希望能够访问苹果和香蕉个人,以做出必要的决定。
如何单独访问元素,而不是只打印每一行?
手动页面始终有助于:
$profanityTextArray = json_decode($profanityText, TRUE);
foreach ($profanityTextArray as $row) {
echo $row['apple'];
}
但是,对JSON进行编码/解码的原因是什么?不能使用fetchAll结果吗?
$profanityTextArray = $pds->fetchAll(PDO::FETCH_ASSOC);
然后用通常的方式迭代这个数组?
顺便说一下,你的问题与PDO无关
你有一个来自PDO的常规数组,它的来源并不重要。
试试这个:
foreach ($profanityTextArray as $key => $jsons) {
echo $jsons->apple;
echo $jsons->peach;
echo $jsons->banana;
}