php二维数组相同值数量,请教php二维数组 查找相同的值合并 怎么写

请问php二维数组 查找相同的值合并 如何写?

这个是数组

主要功能就是Thinkphp视图模型里查询的结果  我想

查询每个数组里的相同的标题值 然后进行合并                合并数组 貌似用array_merge()

我怎么查找相同的标题呢  foreach 遍历 返回数组里的索引值 可以么       貌似 key() 函数有这个功能 求好心人具体写个

相同的标题 数组元素的位置 这样返回 合并的时候就直接 这样的形式用 可以么

array_merge(array[0],array[1])

相同的标题 然后合并的是图片的连接字段这样 pictureurl就是这个不一样

简单说就是多图上传 发文章这样的  文章找找以后要是有几千篇 那数组就是好几倍的量  高效的计算 能用的 求大神指点啊~

这样

array(2) {

[0] => array(5) {

["picTitle"] => string(33) "标题1"

["picCategroy"] => string(6) "分类"

["picAuthor"] => string(12) "作者"

["picPostTime"] => string(19) "2014-11-20 16:05:16"

["pictureurl"] => string(55) "attachment/picture/uploadify/20141120/546da0784831c.png"

}

[1] => array(5) {

["picTitle"] => string(33) "标题1"

["picCategroy"] => string(6) "分类"

["picAuthor"] => string(12) "作者"

["picPostTime"] => string(19) "2014-11-20 16:05:16"

["pictureurl"] => string(55) "attachment/picture/uploadify/20141120/546da0746edb8.png"

}

}

------解决思路----------------------

$ar = array(

array(

"picTitle" => "标题1",

"picCategroy" => "分类",

"picAuthor" => "作者",

"picPostTime" => "2014-11-20 16:05:16",

"pictureurl" => "attachment/picture/uploadify/20141120/546da0784831c.png",

),

array(

"picTitle" => "标题1",

"picCategroy" => "分类",

"picAuthor" => "作者",

"picPostTime" => "2014-11-20 16:05:16",

"pictureurl" => "attachment/picture/uploadify/20141120/546da0746edb8.png",

),

);

foreach(call_user_func_array('array_merge_recursive', $ar) as $key=>$item) {

$res[$key] = join(',', array_unique($item));

}

var_export($res);array (

'picTitle' => '标题1',

'picCategroy' => '分类',

'picAuthor' => '作者',

'picPostTime' => '2014-11-20 16:05:16',

'pictureurl' => 'attachment/picture/uploadify/20141120/546da0784831c.png,attachment/picture/uploadify/20141120/546da0746edb8.png',

)

------解决思路----------------------

随便写了下,没测试过,大楷是这么个思路

$ar = array(

array(

"picTitle" => "标题1",

"picCategroy" => "分类",

"picAuthor" => "作者",

"picPostTime" => "2014-11-20 16:05:16",

"pictureurl" => "attachment/picture/uploadify/20141120/546da0784831c.png",

),

array(

"picTitle" => "标题1",

"picCategroy" => "分类",

"picAuthor" => "作者",

"picPostTime" => "2014-11-20 16:05:16",

"pictureurl" => "attachment/picture/uploadify/20141120/546da0746edb8.png",

),

);

//标题=>数组索引数组

$map_arr=array();

foreach($ar as $key=>$item)

{

//判断是否在标题=>数组索引数组中

if(isset($map_arr[$item['picTitle']]))

{

//在的话合并

$ar[$key]=array_merge($ar[$key],$map_arr[$item['picTitle']]);

}

else

{

//不在的话存入映射索引

$map_arr[$item['picTitle']]=$item;

unset($ar[$key]);//删除原来在数组存在的值

}

}

------解决思路----------------------

$arr = array(

array(

"picTitle" => "标题1",

"picCategroy" => "分类",

"picAuthor" => "作者",

"picPostTime" => "2014-11-20 16:05:16",

"pictureurl" => "attachment/picture/uploadify/20141120/546da0784831c.png",

),

array(

"picTitle" => "标题1",

"picCategroy" => "分类",

"picAuthor" => "作者",

"picPostTime" => "2014-11-20 16:05:16",

"pictureurl" => "attachment/picture/uploadify/20141120/546da0746edb8.png",

)

);

$item=array();

foreach($arr as $key=>$value){

foreach($value as $k=>$v){

if(!isset($item[$k])){

$item[$k]=$v;

}

}

}

print_r($item);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值