PHP实现向关联数组指定的Key之前插入元素的方法


Posted in PHP onJune 06, 2017

本文实例讲述了PHP实现向关联数组指定的Key之前插入元素的方法。分享给大家供大家参考,具体如下:

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

1. $array[$insert_key] = $insert_value;
2. $array = array_merge($array, $insert_array);
3. $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);
  }
}

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP 数字左侧自动补0
Mar 31 PHP
Php Cookie的一个使用注意点
Nov 08 PHP
PHP中删除变量时unset()和null的区别分析
Jan 27 PHP
php中$_REQUEST、$_POST、$_GET的区别和联系小结
Nov 23 PHP
基于PHP 面向对象之成员方法详解
May 04 PHP
一个基于phpQuery的php通用采集类分享
Apr 09 PHP
PHP5.3安装Zend Guard Loader图文教程
Sep 29 PHP
基于PHP代码实现中奖概率算法可用于刮刮卡、大转盘等抽奖算法
Dec 20 PHP
PHP mongodb操作类定义与用法示例【适合mongodb2.x和mongodb3.x】
Jun 16 PHP
PHP聊天室简单实现方法详解
Dec 08 PHP
php使用fputcsv实现大数据的导出操作详解
Feb 27 PHP
基于PHP的登录和注册的功能的实现
Aug 06 PHP
PHP培训要多少钱
Jun 06 #PHP
Mac系统完美安装PHP7详细教程
Jun 06 #PHP
PHP实现的注册,登录及查询用户资料功能API接口示例
Jun 06 #PHP
PHP PDO操作MySQL基础教程
Jun 05 #PHP
PHP生成各种随机验证码的方法总结【附demo源码】
Jun 05 #PHP
Windows 下安装 swoole 图文教程(php)
Jun 05 #PHP
PHP手机号中间四位用星号*代替显示的实例
Jun 02 #PHP
You might like
全国FM电台频率大全 - 12 安徽省
2020/03/11 无线电
一个阿拉伯数字转中文数字的函数
2006/10/09 PHP
利用PHP创建动态图像
2006/10/09 PHP
php 页面执行时间计算代码
2008/12/04 PHP
PHP 杂谈《重构-改善既有代码的设计》之一 重新组织你的函数
2012/04/09 PHP
php实现读取手机客户端浏览器的类
2015/01/09 PHP
PHP实现的多文件上传类及用法示例
2016/05/06 PHP
PHP弱类型语言中类型判断操作实例详解
2017/08/10 PHP
浅谈php使用curl模拟多线程发送请求
2019/03/08 PHP
Laravel 实现添加多语言提示信息
2019/10/25 PHP
Jquery 类网页微信二维码图块滚动效果具体实现
2013/10/14 Javascript
容易造成JavaScript内存泄露几个方面
2014/09/04 Javascript
JavaScript阻止事件冒泡示例分享
2014/12/28 Javascript
JavaScript中的值类型详细介绍
2014/12/29 Javascript
JavaScript中点击事件的写法
2016/06/28 Javascript
nodejs微信公众号支付开发
2016/09/19 NodeJs
JSON 对象未定义错误的解决方法
2016/09/29 Javascript
解决layer.confirm选择完之后消息框不消失的问题
2019/09/16 Javascript
webpack的tree shaking的实现方法
2019/09/18 Javascript
如何用vue-cli3脚手架搭建一个基于ts的基础脚手架的方法
2019/12/12 Javascript
详解实现vue的数据响应式原理
2021/01/20 Vue.js
python列出目录下指定文件与子目录的方法
2015/07/03 Python
python实现切割url得到域名、协议、主机名等各个字段的例子
2019/07/25 Python
使用pandas 将DataFrame转化成dict
2019/12/10 Python
Python matplotlib画图时图例说明(legend)放到图像外侧详解
2020/05/16 Python
Python爬虫防封ip的一些技巧
2020/08/06 Python
Python Opencv图像处理基本操作代码详解
2020/08/31 Python
简单介绍HTML5中的文件导入
2015/05/08 HTML / CSS
数控技术专科生自我评价
2014/01/08 职场文书
工程招投标邀请书
2014/01/30 职场文书
消防宣传口号
2014/06/16 职场文书
村主任“四风”问题个人对照检查材料思想汇报
2014/10/02 职场文书
房产公证书格式
2015/01/26 职场文书
2015廉洁自律个人总结
2015/02/14 职场文书
大学生党课心得体会
2016/01/07 职场文书
微软团队与 NASA 科学家和惠普企业(HPE)的工程师合作
2022/04/21 数码科技