php - PHP 数组组织
问题描述
我正在尝试获取格式更好的信息列表。
基本上我现在拥有的是一个多维数组,其中包含不同数据的多个条目。
如果我会做 foreach $bigarray,我会得到这样的东西:
array(
"id" => 1,
"company" => "bar",
"advertisment" => "Selling X",
"user_id" => "200",
"uri" => "bbbbbbxa"
);
array(
"id" => 2,
"company" => "bar",
"advertisment" => "Selling ABC",
"user_id" => "200",
"uri" => "xxxaaaa"
);
array(
"id" => 3,
"company" => "CROMUS",
"advertisment" => "Selling BBB",
"user_id" => "222",
"uri" => "bsaxxaa"
);
** 注意相同的 user_id 和公司名称 **
** 我想要一个唯一的公司列表,其中包含与之对应的广告 **
从上面我会得到3个“正方形”的数据,如下所示:
- 公司名称
- 广告标题
=================
- 相同的公司名称
- 相同的广告标题
=================
- 不同的公司名称
- 不同的广告标题
==========================
但我想得到:
==========================
- 公司名称
- 第一个广告标题
- 第二个广告标题
- ** 如果找到具有相同 user_id 的任何其他条目,以此类推 **
==========================
- 不同的公司名称
- 不同的广告
==========================
所以基本上我希望数组 1 以某种方式添加到数组 0 所以当我在 foreach($bigarray as $post) 中回显时,我会像
echo $post['advertisment'].' '.$post['uri']
echo $post['advertisment_2'].' '.$post['uri2']
注意:我可能有超过 2 个值,我可能在同一家公司有 6 个广告,我基本上想按 id 组织它们(顶部是最新的)
直到现在我做了这样的事情只是为了意识到我采取了错误的方法:
foreach($latest->posts as $key => $post) {
if(in_array($post->user_id,$iduri)){
array_push($iduri, $post->user_id);
}
if(in_array($post->user_id,$iduri)) {
array_push($cuie,$post->title);
array_push($urix,$post->uri);
} else {
for ($i = 0; $i <= count($cuie); $i++) {
echo $cuie[i];
echo $urix[i];
}
} // end if in array
} //end foreach
解决方案
推荐阅读
- javascript - 拉取标题并以列表格式显示在 div 中
- java - 两个字符串之间的等于运算符或函数未在 JAVA 中正确验证
- android - 无法从 Fragment 中更新 TableLayout
- javascript - req.body 在 express 应用的 post 路由中未定义
- amazon-web-services - 模块内部未识别 Terraform 子网详细信息
- flutter - Flutter DistanceMatrix JSON 无法正确解析
- python-3.x - 如何在运行时将 TFRecord 文件拆分为训练/测试集
- virtual-machine - 如何使用 Host-Only Adapter 将来宾 VM 与主机通信?(虚拟盒子)
- python - 如何使用 Python 中的表格从 .docx 中提取文本
- python-2.7 - Python中的类变量和静态方法