IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    PHP 如何向关联数组指定的 Key 之前插入元素

    Denis | 邓鸿华发表于 2023-12-11 07:44:27
    love 0

    PHP 关联数组可以通过三种方式插入新元素:

    $array[$insert_key] = $insert_value;
    
    $array = array_merge($array, $insert_array);
    
    $array = $array+$insert_array;
    

    但是如果要在指定的键之前插入元素呢?下面的代码将 $data 插入关联数组 $array 的键名为 $key 的 Key 之前:

    
    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);
    	}
    }

    调用也很简单,比如下面在 $columns 的 'author' 之前插入 ['page_title'=>'页面标题'] :

    wpjam_array_push($columns, ['page_title'=>'页面标题'], 'author');

    该功能已经整合到 WPJAM Basic 插件中,并已免费提供下载,简单勾选或者设置下即可开启!

    © WordPress果酱 / RSS 订阅 / 长期承接 WordPress 项目



沪ICP备19023445号-2号
友情链接