当我从 hello 数据库中提取数据时,它只写入第一行,而不写入其他行,这可能是什么原因?我对 php json 不太了解,但没有得到任何结果。未找到 ID 88**数据库打印**[{"title":"facebook","contact":"facebook adres"},{"title":"twitter","contact":"twitter adres"}]数据库数据id:87 [{"title":"facebook","contact":"facebook adres"}, {"title":"twitter","contact":"twitter adres"}]id:88 [{"title":"instagram","contact":"instagram adres"}, {"title":"google","contact":"google adres"}]数据库功能function menu($menu_title){ global $db; $query = $db->prepare('SELECT * FROM menu WHERE menu_title = :menu_title'); $query->execute([ 'menu_title' => $menu_title ]); $result = $query->fetchAll(PDO::FETCH_ASSOC); if ($result) { $data = []; foreach ($result as $key => $value) { $data += json_decode($value['menu_content'], true); } return $data; } return null;}社交媒体 foreach <?php foreach (menu('sosyalmedya') as $key => $menu): ?> <?= $menu['title'] ?><br><?= $menu['contact'] ?><br><?php endforeach; ?>
1 回答

jeck猫
TA贡献1909条经验 获得超7个赞
您仅返回每个 JSON 数组的第一个元素。将整个数组附加到结果中。
foreach ($result as $value) { $data = array_merge($data, json_decode($value['menu_content'], true)); }
SELECT *
顺便说一句,如果您只想要该列,请不要使用menu_content
。使用SELECT menu_content
.
- 1 回答
- 0 关注
- 105 浏览
添加回答
举报
0/150
提交
取消