$arr1=array(1,4,5,7,9,15,18,20);
假设在5的后面插入一个6,并输出数组
1,4,5,6,7,9,15,18,20

解决方案 »

  1.   

    如果升序的话:
    <?php
    $arr=array(1,4,5,7,9,15,18,20);
    $arr[]=6;
    sort($arr);
    print_r($arr);
    ?>
      

  2.   

    你头像换得蛮快嘛...如果不是升序的话.... 这是刚写的函数,如果需要插入多个自己修改吧.
    $arr1 = array (1, 4, 5, 7, 9, 15, 18, 20 );
    print_r ( input_array ( $arr1, 5, 6 ) );function input_array($array, $value, $input) {
    $key = array_search ( $value, $array );
    if ($key !== false) {
    array_splice ( $array, $key, 1, array ($array [$key], $input ) );
    return $array;
    }
    return false;
    }
      

  3.   

    想了一下 也可以截开数组然后在末尾array_push()然后再合并两个给截开的数组,php的数组最有意思了,犹如孙猴子的七十二变...
      

  4.   


    那就用我给你写的函数吧input_array($array, $value, $input)$array 要添加的数组
    $value 要给老汉推车的数值
    $input 老汉推车的数值
      

  5.   

    思路是;array_push — 将一个或多个单元压入数组的末尾(入栈) sort — 对数组排序
      

  6.   

    以下方法纯属恶搞哈:  function fun1($arr, $value, $pos){
          $arr[strval($pos+0.1)] = $value;
          sort($arr);
          return $arr;
      }
      $arr1=array(1,4,5,7,9,15,18,20);
      var_dump(fun1($arr1, 6,2));
      exit;
      

  7.   


    $arr=array(1,4,7,9,15,18,20,5);
    $str = implode(',',$arr);
    $newarr = explode(',5,',$str);
    $newstr = $newarr[0].',5,6'.(isset($newarr[1])?','.$newarr[1]:'');
    $lastArr = explode(',',$newstr);
    print_r($lastArr);
    呵呵 如果这个数组只有一个5的话