PHP删除数组中指定下标的元素方法

1、前面有讲数组作为堆栈和队列时的删除元素操作,即按顺序有规律的进行删除。那么,如果需要从数组的中间位置删除某个元素该如何操作呢?就需要我们今天要讲的unset()函数了。

2、unset()函数允许取消一个数组中的元素,但数组并不会重建索引,即保持原有索引,因为php中的索引具有特殊的含义。

3、示例展示:

<?php
  $arr = array(1=>'one',2=>'two',3=>'three'); 

  //删除下标为2的元素
  unset($arr[2]); //将得到Array(1=>'one',3=>'three') 

  //使用array_values()重新建立索引
  $aar = array_values($arr); //$aar = array(0=>'one',1=>'three')
?> 

4、上面例子中最后一句代码为重新建立数组索引,在这里我解释以下:因为使用unset()函数删除一个元素以后,并没有重新建立索引下标顺序。如果需要有顺序的索引下标,可以使用array_values()函数重新创建索引下标顺序。

注意:该处所说的重新建立索引是指:重新建立一个以0开始的顺序下标,即使你的索引不是以数字命名的,也会被重新建立索引。

以上这篇PHP删除数组中指定下标的元素方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

您可能感兴趣的文章:

  • PHP删除数组中特定元素的两种方法
  • PHP删除数组中的特定元素的代码
  • php数组中删除元素之重新索引的方法
  • php删除数组元素示例分享
(0)

相关推荐

  • php删除数组元素示例分享

    PHP删除数组元素的具体方法: 1.用unset()方法: 复制代码 代码如下: <?php$a=array("red", "green", "blue", "yellow");   count($a); //得到4   unset($a[1]); //删除第二个元素   count($a); //得到3   echo $a[2]; //数组中仅有三个元素,本想得到最后一个元素,但却得到blue,   echo $a[1

  • PHP删除数组中特定元素的两种方法

    方法一: 复制代码 代码如下: <?php$arr1 = array(1,3, 5,7,8);$key = array_search(3, $arr1); if ($key !== false)    array_splice($arr1, $key, 1);var_dump($arr1);?> 输出:array(4) { [0]=> int(1) [1]=> int(5) [2]=> int(7) [3]=> int(8) } 方法二: 复制代码 代码如下: <

  • PHP删除数组中的特定元素的代码

    比如下面的程序: 复制代码 代码如下: <?php $arr = array('apple','banana','cat','dog'); unset($arr[2]); print_r($arr); ?> 程序运行结果: 复制代码 代码如下: Array ( [0] => apple [1] => banana [3] => dog ) 但是这种方法的最大缺点是没有重建数组索引,就是说,数组的第三个元素没了. 经过查资料后,原来PHP提供了这个功能,只不过很间接.这个函数是

  • php数组中删除元素之重新索引的方法

    如果要在某个数组中删除一个元素,可以直接用的unset,但今天看到的东西却让我大吃一惊 复制代码 代码如下: <?php $arr = array('a','b','c','d'); unset($arr[1]); print_r($arr); ?> print_r($arr)之后,结果却不是那样的,最终结果是 Array ( [0] => a [2] => c [3] => d ) 那么怎么才能做到缺少的元素会被填补并且数组会被重新索引呢?答案是 array_splice(

  • PHP删除数组中指定下标的元素方法

    1.前面有讲数组作为堆栈和队列时的删除元素操作,即按顺序有规律的进行删除.那么,如果需要从数组的中间位置删除某个元素该如何操作呢?就需要我们今天要讲的unset()函数了. 2.unset()函数允许取消一个数组中的元素,但数组并不会重建索引,即保持原有索引,因为php中的索引具有特殊的含义. 3.示例展示: <?php $arr = array(1=>'one',2=>'two',3=>'three'); //删除下标为2的元素 unset($arr[2]); //将得到Arra

  • PHP删除数组中指定值的元素常用方法实例分析【4种方法】

    本文实例讲述了PHP删除数组中指定值的元素.分享给大家供大家参考,具体如下: 测试数组如下: //这是一个测试数组 $testArr = array( 't' => 'qq', 'q' => 'qq', 'b' => 'baidu', 'a' => 'ali', 'm' => 'xiaomi' ); 方法一: //foreach遍历后unset删除,这种方法也是最容易想到的方法 function delByValue($arr, $value){ if(!is_array($

  • java中删除 数组中的指定元素方法

    java中删除 数组中的指定元素要如何来实现呢,如果各位对于这个算法不是很清楚可以和小编一起来看一篇关于java中删除 数组中的指定元素的例子. java的api中,并没有提供删除数组中元素的方法.虽然数组是一个对象,不过并没有提供add().remove()或查找元素的方法.这就是为什么类似ArrayList和HashSet受欢迎的原因. 不过,我们要感谢Apache Commons Utils,我们可以使用这个库的ArrayUtils类来轻易的删除数组中的元素.不过有一点需要注意,数组是在大

  • JS删除数组里的某个元素方法

    删除数组指定的某个元素 首先可以给JS的数组对象定义一个函数,用于查找指定的元素在数组中的位置,即索引,代码为: Array.prototype.indexOf = function(val) { for (var i = 0; i < this.length; i++) { if (this[i] == val) return i; } return -1; }; 然后使用通过得到这个元素的索引,使用js数组自己固有的函数去删除这个元素: 代码为: Array.prototype.remove

  • 根据key删除数组中指定的元素实现方法

    php数组中元素的存在方式是以键值对的方式('key'=>'value'),有时候我们需要根据键删除数组中指定的某个元素. function bykey_reitem($arr, $key){ if(!array_key_exists($key, $arr)){ return $arr; } $keys = array_keys($arr); $index = array_search($key, $keys); if($index !== FALSE){ array_splice($arr,

  • 详解js删除数组中的指定元素

    本篇文章将会给大家介绍两种删除数组中的指定元素的方式,分别为: 1.单独定义一个的函数,通过函数来删除指定数组元素. 2.为Array对象定义了一个removeByValue的方法,在调用方法来删除指定数组元素,调用非常简单的. 下面我们通过简单的代码示例来简单介绍这两种删除数组指定元素的方式. 1.定义单独的函数removeByValue来进行元素删除 代码示例:删除数组somearray里的"tue"元素 <!DOCTYPE html> <html> <

  • Javascript删除数组里的某个元素

    删除数组中的某个元素,首先需要确定需要删除元素的索引值. var arr=[1,5,6,12,453,324]; function indexOf(val){ for(var i = 0; i < arr.length; i++){ if(arr[i] == val){return i;} } return -1; } 找到相对应的索引值后,根据索引值删除数组中该元素对应的值 function remove(val){ var index = indexOf(val); if(index >

  • php中删除数组的第一个元素和最后一个元素的函数

    对于一个php数组,该如何删除该数组的第一个元素或者最后一个元素呢?其实这两个过程都可以通过php自带的函数 array_pop 和 array_shift 来完成,下面就具体介绍一下如何来操作. (1)使用 array_pop 删除数组的最后一个元素,例如: $user=array('apple','banana','orange'); $result=array_pop($user); print_r($result); print_r($user); 结果将是: orange array(

  • PHP根据key删除数组中指定的元素

    php数组中元素的存在方式是以键值对的方式('key'=>'value'),有时候我们需要根据键删除数组中指定的某个元素. function bykey_reitem($arr, $key){ if(!array_key_exists($key, $arr)){ return $arr; } $keys = array_keys($arr); $index = array_search($key, $keys); if($index !== FALSE){ array_splice($arr,

随机推荐