php - 如何在三个列表列中使用 PHP 解码 JSON?
问题描述
我是使用 JSON 和 PHP 的新手。我有一个很大的 JSON 产品列表,这些产品正在通过 PHP 解码,我需要将此列表拆分为 3 列。我怎样才能做到这一点?这是我现在使用的代码:
<div class="col-md-4">
<div class="section-title">
<ul class="dados">
<?php
$url = 'http://myurl/consult';
$data = file_get_contents($url);
$characters = json_decode($data);
foreach ($characters as $character) {
?>
<li class="nomes-ies"><a href="#" class="nomes-ies"><?php echo $character->nome . '</a></li>'; } ?>
</ul>
</div>
</div>
解决方案
您可以使用array_chunk()
将数组拆分为三个元素。然后,在这个数组上使用 foreach,围绕<div class="col-md-4">
:
<?php
$url = 'http://myurl/consult';
$data = file_get_contents($url);
$characters = json_decode($data);
$cols = array_chunk($characters, ceil(count($characters) / 3));
foreach ($cols as $data) {
?>
<div class="col-md-4">
<div class="section-title">
<ul class="dados">
<?php foreach ($data as $character) { ?>
<li class="nomes-ies"><a href="#" class="nomes-ies"><?php echo $character->nome ?></a></li>
<?php } ?>
</ul>
</div>
</div>
<?php } // end foreach $cols ?>
请注意,array_chunk()
必须计算其中使用的元素数ceil()
以避免获得 4 列。最后一列的元素可能比另一列少。
推荐阅读
- ruby-on-rails - 如何将我的表单标签与控件连接以在 Ruby on Rails 中更新我的购物车的总价格?
- powershell - Powershell ADP API 令牌
- docker - CentOS 8:如何更新 Docker 客户端
- kubernetes - AWS EKS:更新 kube-proxy
- spring-boot - Spring Boot h2初始数据不首先创建表
- r - 如何在 R 中使用应用函数来查找子组变量的最大值
- python - 如何将一个 Excel 工作簿的多个选项卡复制粘贴到现有的 Excel 工作簿到不同的工作表中?
- angular - 有没有办法只在 Angular 中用键构建查询字符串?
- reactjs - 一个变量未在页面上呈现
- google-sheets - 如果单元格的值在另一个工作表的另一个列表中,如何使用条件格式为单元格着色