suchen

Heim  >  Fragen und Antworten  >  Hauptteil

完善以下PHP代码中的insertAt函数,实现在数组$items的任意位置插入数据

<?php

$items= ['苹果','橘子','梨','菠萝','香蕉','火龙果'] ;

/*
$items 传入的数组
$index 要插入的位置
$value 要插入的数据
*/
function insertAt($items, $index, $value) {

return $items;

}

$items=insertAt($items, 2 , '橙子'); //执行完成后,得到的结果如下
['苹果','橘子','橙子','梨','菠萝','香蕉','火龙果'] ;

大家讲道理大家讲道理2896 Tage vor464

Antworte allen(2)Ich werde antworten

  • 巴扎黑

    巴扎黑2017-04-10 15:26:04

    php<?php
    
    $items= ['苹果','橘子','梨','菠萝','香蕉','火龙果'] ;
    
    /*
    $items 传入的数组
    $index 要插入的位置
    $value 要插入的数据
    */
    function insertAt($items, $index, $value) {
        array_splice ( $items , $index ,  0 , $value);
    
        return $items;
    }
    
    
    $out = insertAt($items,2,'橙子');
    
    var_dump($out);
    
    /* return 
    array (size=7)
      0 => string '苹果' (length=6)
      1 => string '橘子' (length=6)
      2 => string '橙子' (length=6)
      3 => string '梨' (length=3)
      4 => string '菠萝' (length=6)
      5 => string '香蕉' (length=6)
      6 => string '火龙果' (length=9)
     */
    

    Antwort
    0
  • 阿神

    阿神2017-04-10 15:26:04

    @宋小北 提到的array_splice是php原生实现。我们千万不要重复造轮子。

    这里造一个,仅为了好玩。

    function insertAt($items, $value, $index=0) {
        is_numeric($index) and
        $items[($index-'0.1').'x'] = $value and
        ksort($items);
        return array_values($items);
    }
    

    Antwort
    0
  • StornierenAntwort