在PHP中添加新值以启动数组

时间:2012-08-26 21:26:05

标签: php arrays push

我尝试使用array_push(),但是我得到了致命的错误。

function get_data($table, $id = '', $condition){

   if($id != '')
     array_push( " WHERE `id` = '".$id."' ", $condition );

   ...
}

问题是,如何将值(在我的情况下是一个字符串)添加到数组的开头?

3 个答案:

答案 0 :(得分:8)

array_unshift()是您正在寻找的功能!

  

array_unshift - 将一个或多个元素添加到数组的开头

$arr = array(1,2,3);
print_r($arr);

/*
Array
(
    [0] => 1
    [1] => 2
    [2] => 3
)   
*/
array_unshift($arr,0);
print_r($arr);

/*
Array
(
    [0] => 0
    [1] => 1
    [2] => 2
    [3] => 3
)   
*/

答案 1 :(得分:4)

致命错误是因为您的参数顺序相反:

function get_data($table, $id = '', $condition){

   if($id != '')
     array_push($condition, " WHERE `id` = '".$id."' " );

   ...
}

如果 $ condition是一个数组,这不会产生致命错误,但会将该项放在数组的 end 中。正如其他答案中所提到的,array_unshift是预置项目的函数。

答案 2 :(得分:0)

array_unshift应该做的伎俩