【php】合并多个数组并去掉相同的
Array([0]=>1[1]=>2)Array([0]=>9)Array([0]=>11)Array([0]=>11[1]=>18)Array([0]=>2)Array...
Array ( [0] => 1 [1] => 2 )
Array ( [0] => 9 )
Array ( [0] => 11 )
Array ( [0] => 11 [1] => 18 )
Array ( [0] => 2 )
Array ( [0] => 2 )
这是for循环出来的,
<?for($i=0;$i<$num;$i++){$tpid=$data[$i]['busitype'];$tpid=explode(".",$tpid,-1);print_r($tpid);echo "<br>";}?>
问题是:
我想把循环出来的这几个数组合并,并去掉相同的值,谢谢啊。。。
我知道可以用array_merge()来合并,也知道用array_unique()去除重复值,但数组是for循环出来的,所以就不知道怎么用array_merge这个函数,参数不知道怎么去写,我的想法是:在for循环里把每个数组都从新装进一个新数组,然后在for循环外就可以当array_merge的参数,但是又不知道参数的数量,怎么写啊????
小弟刚学,数组老是搞不好,谢谢了大哥大姐。。。
你是要把$tpid数组的内容合并吗?
是的!!!
最后的结果应是只有1,2,9,11,18
你说的还不行,打印出$result是Array ( [0] => 2 )
我在csdn上找到答案了,就是你的思路,只是我没有领会好,呵呵,谢谢你。。。
http://topic.csdn.net/u/20080513/11/ea79e380-3e4f-43c9-90d6-5e89d174741d.html?955687637 展开
Array ( [0] => 9 )
Array ( [0] => 11 )
Array ( [0] => 11 [1] => 18 )
Array ( [0] => 2 )
Array ( [0] => 2 )
这是for循环出来的,
<?for($i=0;$i<$num;$i++){$tpid=$data[$i]['busitype'];$tpid=explode(".",$tpid,-1);print_r($tpid);echo "<br>";}?>
问题是:
我想把循环出来的这几个数组合并,并去掉相同的值,谢谢啊。。。
我知道可以用array_merge()来合并,也知道用array_unique()去除重复值,但数组是for循环出来的,所以就不知道怎么用array_merge这个函数,参数不知道怎么去写,我的想法是:在for循环里把每个数组都从新装进一个新数组,然后在for循环外就可以当array_merge的参数,但是又不知道参数的数量,怎么写啊????
小弟刚学,数组老是搞不好,谢谢了大哥大姐。。。
你是要把$tpid数组的内容合并吗?
是的!!!
最后的结果应是只有1,2,9,11,18
你说的还不行,打印出$result是Array ( [0] => 2 )
我在csdn上找到答案了,就是你的思路,只是我没有领会好,呵呵,谢谢你。。。
http://topic.csdn.net/u/20080513/11/ea79e380-3e4f-43c9-90d6-5e89d174741d.html?955687637 展开
2个回答
展开全部
你是要把$tpid数组的内容合并吗,可以先弄了一个空数组,for里面归并到这个空数组,for结束之后进行唯一处理,大致逻辑如下:
<?php
$result=Array();
for($i=0;$i<$num;$i++){
$tpid=$data[$i]['busitype'];
$tpid=explode(".",$tpid,-1);
print_r($tpid);
echo "<br>";
$result=array_merge($result,$tpid);
}
$result=array_unique($result);
?>
补充:
那是array_merge的问题,重复的下标会被合并,你试试看使用array_merge_recursive吧,我无法测试程序,没有你的数据。
<?php
$result=Array();
for($i=0;$i<$num;$i++){
$tpid=$data[$i]['busitype'];
$tpid=explode(".",$tpid,-1);
print_r($tpid);
echo "<br>";
$result=array_merge($result,$tpid);
}
$result=array_unique($result);
?>
补充:
那是array_merge的问题,重复的下标会被合并,你试试看使用array_merge_recursive吧,我无法测试程序,没有你的数据。
展开全部
你是要把$tpid数组的内容合并吗,可以先弄了一个空数组,for里面归并到这个空数组,for结束之后进行唯一处理,大致逻辑如下:
<?php
$result=Array();
for($i=0;$i<$num;$i++){
$tpid=$data[$i]['busitype'];
$tpid=explode(".",$tpid,-1);
print_r($tpid);
echo
"<br>";
$result=array_merge($result,$tpid);
}
$result=array_unique($result);
?>
补充:
那是array_merge的问题,重复的下标会被合并,你试试看使用array_merge_recursive吧,我无法测试程序,没有你的数据。
<?php
$result=Array();
for($i=0;$i<$num;$i++){
$tpid=$data[$i]['busitype'];
$tpid=explode(".",$tpid,-1);
print_r($tpid);
echo
"<br>";
$result=array_merge($result,$tpid);
}
$result=array_unique($result);
?>
补充:
那是array_merge的问题,重复的下标会被合并,你试试看使用array_merge_recursive吧,我无法测试程序,没有你的数据。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询