代码之家  ›  专栏  ›  技术社区  ›  xkeshav

在PHP中的数组开头插入值

  •  1
  • xkeshav  · 技术社区  · 14 年前

    我的阵列是

    $hello= array( Code => 'TIR', Description => 'Tires', Price => 100 )

    现在我想在数组的开头添加一个值,而不是在数组的结尾添加一个值……我想要的结果是

    $hello= array( ref=>'World', Code => 'TIR', Description => 'Tires', Price => 100 )

    更新

    实际上,我需要将要出现的任何值添加到数组的开头…这不是单个值。ref=世界….这是来自输出…就像如果我添加数量=50,那么它应该在数组的“ref”之前添加到数组的开头。

    $hello= array(quantity=>'50', ref=>'World', Code => 'TIR', Description => 'Tires', Price => 100 )

    4 回复  |  直到 14 年前
        1
  •  3
  •   Pekka    14 年前

    我会用 array_merge()

    将一个或多个数组的元素合并在一起,以便将一个数组的值附加到前一个数组的末尾。它返回结果数组。

    $hello = array ("Code" => "Tir" .....); // you should really put quotes 
                                            // around the keys!
    $world = array ("ref" => "World");
    
    $merged = array_merge($world, $hello);
    
        2
  •  2
  •   Community Paul Sweatte    7 年前

    您可以使用 + 操作员:

    $hello = array( 'Code' => 'TIR', 'Description' => 'Tires', 'Price' => 100 );
    $hello = array('ref' => 'World') + $hello;
    print_r($hello);
    

    会给

    Array
    (
        [ref] => World
        [Code] => TIR
        [Description] => Tires
        [Price] => 100
    )
    

    就像佩卡说的,你应该在钥匙周围加上引号。这个 PHP manual explicitly states omitting quotes is wrong usage . 您可能还想退房 my answer about the difference between using the + operator vs using array_merge 决定你要用哪一个。

        3
  •  1
  •   Guillaume Massé    13 年前
    $a= array( 'a' => 'a' );
    $b = array( 'b' => 'b' );
    
    $res = $b + $a;
    //result: ( 'b' => 'b', 'a' => 'a' )
    
        4
  •  0
  •   user270441    14 年前

    $hello=array_merge(array('ref'=>'world'),$hello);