PHP重建数组索引的几种小方法

PHP 中的数组实际上是一个有序映射。映射是一种把 values 关联到 keys 的类型。此类型在很多方面做了优化,因此可以把它当成真正的数组,或列表(向量),散列表(是映射的一种实现),字典,集合,栈,队列以及更多可能性。由于数组元素的值也可以是另一个数组,树形结构和多维数组也是允许的。

类型

  1. 索引数组,即从数组从0,1
  2. 关联数组,即自定义的key

重建方法

  1. array_column(arr,key,index);

    在key中传NUll,即可以将一个新的数组重建为索引数组

    $a = array(
        'a' => 'baidu',
        'b' => 'qq',
        'c' => 'nho',
    );
    print_r(array_column($a,null)); //echo array('baidu','qq','nho')
  2. array_merge($arr1,$arr2);

    只方法只能用于key不是从0开始的索引数组,对关联索引无效,只传当前的一个索引数组,则会将当前的数组索引重建

    $b = [
            1=>'baidu',
            '1123',
            'nho',
        ];
    print_r(array_merge($b));    //echo array('baidu','1123','nho')
  3. array_splice($arr,$start,$length,$replacement);

    此方法是返回数组的指定片段,$replacement设置为true将可以重建数字索引

    $b = array(
        '1' => 'baidu',
        '2' => 'qq',
        '3' => 'nho',
        '4' => 'vv'
    );
    $count = count($b);
    print_r(array_splice($b,0,$count,true)); //echo array('baidu','qq','nho','vv')

原文地址:https://www.cnblogs.com/Daneil/p/11605852.html

时间: 2024-10-11 21:57:28

PHP重建数组索引的几种小方法的相关文章

数组操作的4种小方法

一.push() 往数组的最后添加内容.有一个返回值:数组长度 二.unshift() 往数组的最前面添加内容.返回值:数组长度 三.pop() 移除数组的最后一个数据.返回值:被移除的数据信息. 四.shift() 移除数组的最前一位数据.返回值:被移除的数据信息. 小例子: var attr=['1','2','3','4'] //把数组中的4放到第一位,1放到最后一位 /*attr.pop()*/ //移除最后一位4,其返回值为4: attr.unshift(attr.pop()); /*

IOS开发之页面间传值的几种小方法

最正经的页面间传值方式莫过于代理传值,今天写的几种小方法不包括代理传值,因为是自学的原因,现在都不知道这几种方法的优缺点,往知道的朋友指正一下: 第一种:属性传值:(这种方法在故事版无效,适合纯代码编写时使用,为什么???) 前提:比如说有两个视图控制器:AViewController和BViewController,他们之间想从A传值到B, ——>在AViewController.m文件中 (1)导入BViewController #import "BViewController.h&q

如何将图片批量压缩?全面盘点这几种小方法

写在前面:现在的人们都喜欢用自己手机里的相机来记录自己生活中的点滴美好,而拍照成为人们记录自己生活的最常用的一个方式,这样当时间过去也会记得自己之前曾去过哪些地方,可是照片多了之后也很烦恼,图片太多,就容易出现体积过大的,在传输的时候特别麻烦,这就需要将图片进行压缩,如果图片过多,就需要进行批量压缩,那么如何将图片批量压缩?今天就来为大家爱全面盘点这几种小方法.一.软件压缩推荐指数:★★★★★借助工具:迅捷压缩软件介绍:迅捷压缩软件是一款操作简单,快捷高效的图片压缩,视频压缩,PDF压缩软件,能

数组去重的几种常见方法?

数组去重的几种常见方法 一.简单的去重方法 // 最简单数组去重法 /* * 新建一新数组,遍历传入数组,值不在新数组就push进该新数组中 * IE8以下不支持数组的indexOf方法 * */ function uniq(array){ var temp = []; //一个新的临时数组 for(var i = 0; i < array.length; i++){ if(temp.indexOf(array[i]) == -1){ temp.push(array[i]); } } retur

JS数组去重的几种常见方法

JS数组去重的几种常见方法 一.简单的去重方法 // 最简单数组去重法 /* * 新建一新数组,遍历传入数组,值不在新数组就push进该新数组中 * IE8以下不支持数组的indexOf方法 * */ function uniq(array){ var temp = []; //一个新的临时数组 for(var i = 0; i < array.length; i++){ if(temp.indexOf(array[i]) == -1){ temp.push(array[i]); } } ret

数组去重的几种实现方法

1. 使用Set ES6 提供了新的数据结构Set, 它类似数组,和C++中的set容器一样,它成员的值都是唯一的,没有重复的值:Set本身是一个构造函数,用来生成Set数据结构. var s = new Set(); s.add("hello").add("goodbye").add("hello"); s.size === 2; s.has("hello") === true; const s = new Set(); [

数组去重的几种实现方法。

传统的去重思路大致如下. 声明一个新的数组,在把旧的数组依次往新的数组里面push,如果遇到新数组已有的对象,就不push. var arr =[1,3,3,3,5,6,6,7,8,1,5,9,5]; var newArr = []; //先声明一个对比的方法 function findInArr(arr,n){ for(var i=0;i<arr.length;i++){ if(arr[i]==n)return true;//找到相似的返回true } return false;//遍历完没有

鼠标滑过时显示图片内容隐藏和鼠标滑过图片隐藏内容显示的两种小方法

1.鼠标滑过时显示图片,内容隐藏,下面以一个小日历的做法展示 <div class="date7"> <a href=""><div class="date7a"><span class="abcabc">30</span></div></a> <a href=""><div class="dat

Java中数组常见的几种排序方法!

数组的定义: int[] arr = new int[5]; int[] arr1 = {1,2,3,4,5}; long[] arr2 = new long[6]; String[] strs = new String[5]; Person[] ps = new Person[5]; 数组的操作: int[] arr = {45, 34, 53, 43}; Arrays.sort(arr); System.out.println(Arrays.toString(arr)); // 二分搜索法(