array(4) {
[0] => array(3) {
["Id"] => string(2) "24"
["FromMid"] => string(3) "157"
["ToMid"] => string(3) "157"
}
[1] => array(3) {
["Id"] => string(2) "22"
["FromMid"] => string(3) "157"
["ToMid"] => string(3) "176"
}
[2] => array(3) {
["Id"] => string(1) "4"
["FromMid"] => string(3) "157"
["ToMid"] => string(2) "25"
}
[3] => array(3) {
["Id"] => string(1) "1"
["FromMid"] => string(2) "25"
["ToMid"] => string(3) "157"
}
}我想把["FromMid"]==["ToMid"]&&["ToMid"]==["FromMid"]处理掉 只留一条
得出的结果应该是
array(4) {
[0] => array(3) {
["Id"] => string(2) "24"
["FromMid"] => string(3) "157"
["ToMid"] => string(3) "157"
}
[1] => array(3) {
["Id"] => string(2) "22"
["FromMid"] => string(3) "157"
["ToMid"] => string(3) "176"
}
[2] => array(3) {
["Id"] => string(1) "4"
["FromMid"] => string(3) "157"
["ToMid"] => string(2) "25"
}
}
[0] => array(3) {
["Id"] => string(2) "24"
["FromMid"] => string(3) "157"
["ToMid"] => string(3) "157"
}
[1] => array(3) {
["Id"] => string(2) "22"
["FromMid"] => string(3) "157"
["ToMid"] => string(3) "176"
}
[2] => array(3) {
["Id"] => string(1) "4"
["FromMid"] => string(3) "157"
["ToMid"] => string(2) "25"
}
[3] => array(3) {
["Id"] => string(1) "1"
["FromMid"] => string(2) "25"
["ToMid"] => string(3) "157"
}
}我想把["FromMid"]==["ToMid"]&&["ToMid"]==["FromMid"]处理掉 只留一条
得出的结果应该是
array(4) {
[0] => array(3) {
["Id"] => string(2) "24"
["FromMid"] => string(3) "157"
["ToMid"] => string(3) "157"
}
[1] => array(3) {
["Id"] => string(2) "22"
["FromMid"] => string(3) "157"
["ToMid"] => string(3) "176"
}
[2] => array(3) {
["Id"] => string(1) "4"
["FromMid"] => string(3) "157"
["ToMid"] => string(2) "25"
}
}
解决方案 »
- fsocket post 数据 无反应
- 新手问题帮忙看看了 谢谢了
- 关于$store_dir的疑问
- 弱弱问一下,虚拟主机商的主机上有个freehost文件,什么意思?
- 关于php全局变量的问题
- 遇到一个PHP连接MySQL问题,PHP支持MySQL,但是总是提示Access denied for user 'IUSR_TOMC-YKJ'@'localhost' (using password
- php配置环境问题~
- 能给写一个PHP对数据库(mysql)操作的例子吗?
- 本地运行php 遇到文件夹不可写的问题!
- 求助,为何require_once 不生效,初学者请教
- ammap地图可以精确到市吗
- 如何合并相同ID里的数量?
<?php
$input = array("red", "green", "blue", "yellow");
array_splice($input, 2);
// $input is now array("red", "green")$input = array("red", "green", "blue", "yellow");
array_splice($input, 1, -1);
// $input is now array("red", "yellow")$input = array("red", "green", "blue", "yellow");
array_splice($input, 1, count($input), "orange");
// $input is now array("red", "orange")$input = array("red", "green", "blue", "yellow");
array_splice($input, -1, 1, array("black", "maroon"));
// $input is now array("red", "green",
// "blue", "black", "maroon")$input = array("red", "green", "blue", "yellow");
array_splice($input, 3, 0, "purple");
// $input is now array("red", "green",
// "blue", "purple", "yellow");
?>
Array
(
[0] => Array
(
[id] => 24
[FromMid] => 157
[ToMid] => 157
) [1] => Array
(
[id] => 1
[FromMid] => 157
[ToMid] => 25
))
[User:root Time:07:04:34 Path:/home/liangdong/php]$ cat arr.php
<?php
$data = array(
array(
"id" => "24",
"FromMid" => "157",
"ToMid" => "157"
),
array(
"id" => "4",
"FromMid" => "157",
"ToMid" => "25"
),
array(
"id" => "1",
"FromMid" => "157",
"ToMid" => "25"
)
);
function unique_data($data) {
$temp_arr = array();
foreach ($data as $value) {
$key = $value["FromMid"] < $value["ToMid"] ?
($value["FromMid"] . "," . $value["ToMid"]) :
($value["ToMid"] . "," . $value["FromMid"]);
$temp_arr[$key] = $value;
}
return array_values($temp_arr);
}
$result = unique_data($data);
print_r($result);
?>
$data = array(
array("Id" => "24", "FromMid" => "157", "ToMid" => "157"),
array("Id" => "22", "FromMid" => "157", "ToMid" => "176"),
array("Id" => "4", "FromMid" => "157", "ToMid" => "25"),
array("Id" => "1", "FromMid" => "25", "ToMid" => "157")
);$List = array();
foreach ($data as $key => $val) {
$posi = md5($val['FromMid'] . $val['ToMid']);
$anti = md5($val['ToMid'] . $val['FromMid']);
if (isset($List[$posi]) || isset($List[$anti])) {
unset($data[$key]);
} else {
$List[$posi] = $List[$anti] = 1;
}
}
echo '<pre>';print_r($data);/**
输出:
Array
(
[0] => Array
(
[Id] => 24
[FromMid] => 157
[ToMid] => 157
) [1] => Array
(
[Id] => 22
[FromMid] => 157
[ToMid] => 176
) [2] => Array
(
[Id] => 4
[FromMid] => 157
[ToMid] => 25
)
*/
//假定你的数组名为$arr
function ar(){
$arr = array(
array(
"Id" => "24",
"FromMid" => "157",
"ToMid" =>"157"
),
array(
"Id" => "22",
"FromMid" => "157",
"ToMid" => "176"
),
array(
"Id" => "4",
"FromMid" => "157",
"ToMid" => "25"
),
array(
"Id" => "1",
"FromMid" => "25",
"ToMid" => "157"
)
);
foreach($arr as $c=>$v){
if($v['FromMid']==$v['ToMid']){
array_splice($arr,$c,1);
}
}
return $arr;
}
var_dump(ar());
?>