> 백엔드 개발 > PHP 튜토리얼 > 谋求最优的计算方法

谋求最优的计算方法

WBOY
풀어 주다: 2016-06-13 10:53:12
원래의
855명이 탐색했습니다.

寻求最优的计算方法
寻求最优的计算数组方法,实在搞不出来了
我有两个数组分别是:

PHP code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->$arr1=array(    array(        'id'=>1,        'pos'=>1    ),    array(        'id'=>2,        'pos'=>2    ),    array(        'id'=>3,        'pos'=>3    ),    array(        'id'=>4,        'pos'=>4    ),    array(        'id'=>5,        'pos'=>5    ),    array(        'id'=>6,        'pos'=>6    ),)$arr2=array(    'id'=>7,    'pos'=>4)
로그인 후 복사


首先查找$arr2的pos在$arr1中的所有数组的pos中的顺序位置,如果顺序位置一致则按照id倒序获取位置

如上面的代码则应该获取的结果为:$arr2位于$arr1的
PHP code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->array(        'id'=>4,        'pos'=>4    ),
로그인 후 복사


之上

------解决方案--------------------
PHP code
<?php $arr1=array(    array(        'id'=>1,        'pos'=>1    ),    array(        'id'=>2,        'pos'=>2    ),    array(        'id'=>3,        'pos'=>3    ),    array(        'id'=>4,        'pos'=>4    ),    array(        'id'=>5,        'pos'=>5    ),    array(        'id'=>6,        'pos'=>6    ),);$arr2=array(    'id'=>7,    'pos'=>4);function array_insert($arr1, $arr2){    $index = 1;    $insert = false;    foreach($arr1 as $v)    {        if ($v['pos'] == $arr2['pos']) {            if ($v['id'] 3,    'pos'=>4);$arr1 = array_insert($arr1, $arr2);print_r($arr1);$arr2=array(    'id'=>5,    'pos'=>6);$arr1 = array_insert($arr1, $arr2);print_r($arr1);?><br><font color="#e78608">------解决方案--------------------</font><br>当
로그인 후 복사
PHP code
$arr1=array(    array(        'id'=>1,        'pos'=>1    ),    array(        'id'=>2,        'pos'=>2    ),    array(        'id'=>3,        'pos'=>3    ),    array(        'id'=>4,        'pos'=>5    ),    array(        'id'=>5,        'pos'=>5    ),    array(        'id'=>6,        'pos'=>6    ),);$arr2=array(    'id'=>7,    'pos'=>4);<div class="clear">
                 
              
              
        
            </div>
로그인 후 복사
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿