php数组处置

php中文网
发布: 2016-06-13 10:50:24
原创
1120人浏览过

php数组处理
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"
  }
}

------解决方案--------------------

PHP code
<?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");?><br><font color="#e78608">------解决方案--------------------</font><br>
登录后复制
PHP code
$data = array(    array("Id" =&gt; "24", "FromMid" =&gt; "157", "ToMid" =&gt; "157"),    array("Id" =&gt; "22", "FromMid" =&gt; "157", "ToMid" =&gt; "176"),    array("Id" =&gt; "4", "FromMid" =&gt; "157", "ToMid" =&gt; "25"),    array("Id" =&gt; "1", "FromMid" =&gt; "25", "ToMid" =&gt; "157"));$markList = array();foreach ($data as $key =&gt; $val) {    $posi = md5($val['FromMid'] . $val['ToMid']);    $anti = md5($val['ToMid'] . $val['FromMid']);    if (isset($markList[$posi]) || isset($markList[$anti])) {        unset($data[$key]);    } else {        $markList[$posi] = $markList[$anti] = 1;    }}echo '<pre class="brush:php;toolbar:false;">';print_r($data);/**输出:Array(    [0] =&gt; Array        (            [Id] =&gt; 24            [FromMid] =&gt; 157            [ToMid] =&gt; 157        )    [1] =&gt; Array        (            [Id] =&gt; 22            [FromMid] =&gt; 157            [ToMid] =&gt; 176        )    [2] =&gt; Array        (            [Id] =&gt; 4            [FromMid] =&gt; 157            [ToMid] =&gt; 25        )*/<div class="clear"></div>
登录后复制
PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号