<?
/**
* PHP 向关联数组指定的 Key 之前插入元素
* @param array $array 原数组
* @param array $data 待插入数组
* @param boolean $key 插入位置
* @return array
*/
function wpjam_array_push($array, $data=null, $key=false){
$data = (array)$data;
$offset = ($key===false)?false:array_search($key, array_keys($array));
$offset = ($offset)?$offset:false;
if($offset){
return array_merge(
array_slice($array, 0, $offset),
$data,
array_slice($array, $offset)
);
} else{ // 没指定 $key 或者找不到,就直接加到末尾
return array_merge($array, $data);
}
}
$aaa = array(1,2,3,4);
$res = wpjam_array_push($aaa, array('a', 'b', 'c'), 1);
print_r($res);