需求
现在有下面一组二维数组:
array(8) { [0]=> array(2) { ["name"]=> string(4) "name" ["value"]=> string(6) "青叶" } [1]=> array(2) { ["name"]=> string(5) "phone" ["value"]=> string(11) "13812341234" } [2]=> array(2) { ["name"]=> string(12) "fileds_507[]" ["value"]=> string(12) "我是青叶" } [3]=> array(2) { ["name"]=> string(12) "fileds_508[]" ["value"]=> string(6) "合肥" } [4]=> array(2) { ["name"]=> string(12) "fileds_509[]" ["value"]=> string(3) "男" } [5]=> array(2) { ["name"]=> string(12) "fileds_510[]" ["value"]=> string(6) "足球" } [6]=> array(2) { ["name"]=> string(12) "fileds_510[]" ["value"]=> string(6) "棒球" } [7]=> array(2) { ["name"]=> string(12) "fileds_511[]" ["value"]=> string(16) "2016-12-15T11:15" } }
需要将处于第二维键名为name,其值相同的数组的value合并,形成一个新的数组。
比如上面代码中的name为fileds_510的两个二维数组,就应该合并为一个值为足球,棒球的数组。
思路
提到数组,再PHP中我们首先想到了循环,那么这里显然比较适合使用for循环处理,与冒泡排序相似,一个个比较,最好处理。
代码
代码如下:
$public_info = 数组; for ($i=0;$i<count($public_info);$i++) { for ($j=$i+1;$j<count($public_info);$j++) { if ($public_info[$j]['name'] == $public_info[$i]['name']) { $public_info[$i]['value'] .= ',' . $public_info[$j]['value']; unset($public_info[$j]); } } }
执行结果:
array(7) { [0]=> array(2) { ["name"]=> string(4) "name" ["value"]=> string(6) "青叶" } [1]=> array(2) { ["name"]=> string(5) "phone" ["value"]=> string(11) "13812341234" } [2]=> array(2) { ["name"]=> string(12) "fileds_507[]" ["value"]=> string(12) "我是青叶" } [3]=> array(2) { ["name"]=> string(12) "fileds_508[]" ["value"]=> string(6) "合肥" } [4]=> array(2) { ["name"]=> string(12) "fileds_509[]" ["value"]=> string(3) "男" } [5]=> array(2) { ["name"]=> string(12) "fileds_510[]" ["value"]=> string(13) "足球,棒球" } [7]=> array(2) { ["name"]=> string(12) "fileds_511[]" ["value"]=> string(16) "2016-12-15T11:15" } }
总结
需求已搞定,只要遇到数组,我们第一个想到的除了现成的PHP方法之外,就是循环,不管是foreach还是for,上面例子是我项目处理的一个自定义表单编辑的小段过程,希望对大家思路有帮助。
本文向大家介绍php去除二维数组的重复项方法,包括了php去除二维数组的重复项方法的使用技巧和注意事项,需要的朋友参考一下 php中去一维数组的重复项可以通过php内置函数array_unique(),但是php的array_unique函数对多维数组并不适用,怎么才能去除二维数组中的重复项呢? 以下给大家提供一个函数。 希望对大家学习php程序设计有所帮助。
本文向大家介绍PHP实现一维数组与二维数组去重功能示例,包括了PHP实现一维数组与二维数组去重功能示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了PHP实现一维数组与二维数组去重功能。分享给大家供大家参考,具体如下: 数组中重复项的去除 一维数组的重复项: 使用array_unique函数即可,使用实例如下: 结果如下: Array ( [0] => 1 [1] => 2 [2] =>
本文向大家介绍两种php去除二维数组的重复项方法,包括了两种php去除二维数组的重复项方法的使用技巧和注意事项,需要的朋友参考一下 php去掉二维数组的重复值的方法总结,具体代码如下: 方法一: 方法二: 两种php去除二维数组的重复项的方法,各有利弊,大家可以根据具体情况进行选择。
我开发了一个程序,获取包含用户id及其技能的用户技能数组,该数组如下: 关键是user_id,值是技能数组,现在我想搜索有两个值的user_id:english或word,我希望返回17,16,我该怎么做,谢谢你的帮助:)
本文向大家介绍PHP 二维数组和三维数组的过滤,包括了PHP 二维数组和三维数组的过滤的使用技巧和注意事项,需要的朋友参考一下 废话不多说了,直接给大家贴代码了,具体代码如下所示: 下面一段代码给大家介绍php三维数组变二维数组 关于PHP 二维数组和三维数组的过滤小编就给大家介绍这么多,希望对大家有所帮助!
问题内容: 我正在查询返回字段(message_type和百分比)的表。我使用PHP编码json数据,这是我的方法 输出: 如您所见,json_encode函数正在添加花括号,引号和对象键名称。 我想要的是将json仅解析为二维数组,这是所需的输出: 我也尝试手动对其进行编码,但无法获得所需的结果。 问题答案: PHP 使用一定数量的魔术来确定给定的矢量是编码为JSON对象还是数组,但是简单的规则