如何根据一列对 PHP 中的子数组进行分组,并从这些组中的另一列创建逗号分隔值?
按一列对子数组进行分组,并从组内的另一列创建逗号分隔值
在 PHP 中,根据一列对子数组进行分组,连接这些组中另一列的值带来了独特的挑战。为了解决这个问题,我们提供了一个详细的解决方案,将给定的数组转换为所需的结构化格式。
提供的示例数组由每个包含两个元素的子数组组成。目标是根据第二个元素(称为“列”)对子数组进行分组,并创建一个新数组,其中每个元素代表一个组。在每个组元素中,第一个元素应该是分组子数组中第一个元素的逗号分隔列表,而第二个元素表示公共列。
为了实现这一点,我们使用分步-步骤方法:
- 循环原始数组:首先迭代原始数组中的每个子数组。
- 检查组键:对于每个子数组,检查第二个元素(组键)是否存在于名为 $groups 的新数组中。如果没有,则为该组键初始化一个空数组。
- 将子数组添加到组:一旦组键存在,将当前子数组的第一个元素添加到相应的组数组中。
- 创建结构化数组:处理完原始数组后,循环遍历$groups数组。对于每个组,使用逗号连接其第一个元素的值并将它们存储在一个新数组中。将其与组键结合起来创建所需的结构。
下面提供的 PHP 脚本演示了这种方法:
<code class="php">// Create the input array $data = array( array('444', '0081'), array('449', '0081'), array('451', '0081'), array('455', '2100'), array('469', '2100') ); // Initialize the groups array $groups = array(); // Loop through the original array foreach ($data as $item) { $key = $item[1]; // Get the group key // Check if the group key exists if (!array_key_exists($key, $groups)) { $groups[$key] = array(); } // Add the subarray to the group $groups[$key][] = $item[0]; } // Create the structured array $structured = array(); foreach ($groups as $group => $values) { $structured[] = array(implode(',', $values), $group); } // Display the output print_r($structured);</code>
登录后复制
此脚本有效地将输入数组转换为新数组具有指定的结构,其中子数组基于公共列进行分组,分组子数组的第一个元素用逗号连接。
以上是如何根据一列对 PHP 中的子数组进行分组,并从这些组中的另一列创建逗号分隔值?的详细内容。更多信息请关注PHP中文网其他相关文章!
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前
By 尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
4 周前
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前
By 尊渡假赌尊渡假赌尊渡假赌
击败分裂小说需要多长时间?
3 周前
By DDD
R.E.P.O.保存文件位置:在哪里以及如何保护它?
3 周前
By DDD

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)