PHP 数组问题

这样一个数组:

通过判断uid和recevierId是否一样,得出以下这样的数组:

如何实现呢?各位帮帮忙吧!

$array = array();
$i=0;
//$arr=你的数组
foreach($arr['data'] as $item) {
foreach($arr['data'] as $v) {
if($item['uid'] == $v['uid'] && $item['recevierId'] == $v['recevierId'] && $item['time'] != $v['time']) {
$array['data'][$i]['uid'] = $item['uid'];
$array['data'][$i]['type'] = $item['type'];
$array['data'][$i]['recevierId'] = $item['recevierId'];
$array['data'][$i]['time'] = $v['time'] . '----' . $item['time'];
$array['data'][$i]['content'] = $v['content'] . ',' . $item['content'];
} else {
$array['data'][$i]['uid'] = $item['uid'];
$array['data'][$i]['type'] = $item['type'];
$array['data'][$i]['recevierId'] = $item['recevierId'];
$array['data'][$i]['time'] = $item['time'];
$array['data'][$i]['content'] = $item['content'];
}
}
$i++;
}
array_pop($array['data']);
echo "<pre>";
print_r($array);追问

这种方法可以实现。可是为什么返回的结果是这样的呢?

追答

那你把你的代码贴一下吧,手打太费劲。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-01-14
讲清楚点就是 同一个uid 和recevierId的时候合并啦。
foreach 一下,用if 判断如果这两个相同就合并在一起。好像没什么好说的追问

我要具体的代码。可以帮我写出来吗?

追答

大哥 你的代友都是用图片的,你要我帮你手写?

第2个回答  2014-01-14
array_merge_recursive

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网