PHP从数组中删除元素的方法
PHP从数组中删除元素的方法
本篇文章主要介绍了PHP从数组中删除元素的四种方法实例
删除一个元素,且保持原有索引不变
使用 unset 函数,示例如下:
1
2
3
4
5
|
<?php $array = array (0 => "a" , 1 => "b" , 2 => "c" ); unset( $array [1]); //↑ 你想删除的key ?> |
输出:
Array (
[0] => a
[2] => c
)
使用 unset 并未改变数组的原有索引。如果打算重排索引(让索引从0开始,并且连续),可以使用 array_values 函数:
1
2
3
4
5
6
7
8
9
10
|
$array = array_values ( $array ); /* 输出 array(2) { [0]=> string(1) "a" [1]=> string(1) "c" } */ |
删除一个元素,不保持索引
使用 array_splice 函数,示例如下:
1
2
3
4
5
|
<?php $array = array (0 => "a" , 1 => "b" , 2 => "c" ); array_splice ( $array , 1, 1); //↑ 你想删除的元素的Offset ?> |
输出:
Array (
[0] => a
[1] => c
)
按值删除多个元素,保持索引
使用 array_diff 函数,示例如下:
1
2
3
4
5
|
<?php $array = array (0 => "a" , 1 => "b" , 2 => "c" ); $array = array_diff ( $array , [ "a" , "c" ]); //└────────┘→ 你想删除的数组元素值values ?> |
输出:
Array (
[1] => b
)
与 unset 类似,array_diff 也将保持索引。
按键删除多个元素,保持索引
使用 array_diff_key 函数,示例如下:
1
2
3
4
5
6
|
<?php $array = array (0 => "a" , 1 => "b" , 2 => "c" ); $array = array_diff_key ( $array , [0 => "xy" , "2" => "xy" ]); //↑ ↑ 你想删除的数组键keys ?> |
输出:
Array (
[1] => b
)
与 unset 类似,array_diff_key 也将保持索引。
PHP从数组中删除元素的方法的更多相关文章
- PHP从数组中删除元素的四种方法实例
PHP从数组中删除元素的四种方法实例 一.总结 一句话总结:unset(),array_splice(),array_diff(),array_diff_key() 二.PHP从数组中删除元素的四种方 ...
- PHP实现查询两个数组中不同元素的方法
以下实例讲述了PHP实现查询两个数组中不同元素的方法.分享给大家供大家参考,具体如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 ...
- MongoDB 学习笔记之 从数组中删除元素和指定数组位置
从数组中删除元素: 从数组中删除单个元素: db.ArrayTest.updateOne({ "name" : "Bill"},{$pop: {"ad ...
- js数组之从数组中删除元素
使用pop()这个函数可以从数组中删除末尾的元素,shift方法可以删除数组中第一个元素.这些都是js中自带的函数,如果不使用这些函数的话,自己写的代码效率会很低的. <html> < ...
- php数组中删除元素之重新索引
如果要在某个数组中删除一个元素,可以直接用的unset,但今天看到的东西却让我大吃一惊 <?php $arr = array('a','b','c','d'); unset($arr[1]); ...
- 9、数组中删除元素(test6.java)
前文讲到,通过函数,进行数组元素的添加,这里同样通过这个函数,进行数组的删除. 举个例子,代码如下: //导入输入所需要的包 import java.util.Scanner; public clas ...
- js-一种去掉数组中重复元素的方法
思路来源于某个同学的博客 function norepeat(arr){ return arr.filter(function(val,index,array) { return array.inde ...
- Java如何删除数组中的元素?
Java中,如何删除数组元素? 示例 以下示例显示如何从数组中删除元素. package com.yiibai; import java.util.ArrayList; public class Re ...
- JavaScript从数组中删除指定值元素的方法
本文实例讲述了JavaScript从数组中删除指定值元素的方法.分享给大家供大家参考.具体分析如下: 下面的代码使用了两种方式删除数组的元素,第一种定义一个单独的函数,第二种为Array对象定义了一个 ...
随机推荐
- POJ-3348 Cows 计算几何 求凸包 求多边形面积
题目链接:https://cn.vjudge.net/problem/POJ-3348 题意 啊模版题啊 求凸包的面积,除50即可 思路 求凸包的面积,除50即可 提交过程 AC 代码 #includ ...
- luogu P2252 取石子游戏(威佐夫博弈)
题意 题解 对于像我这种不知道威佐夫博弈的人来说,拿到题就开始打表了. 然而打完后并没有发现什么. 然后才知道是威佐夫博弈. 结论是当(int)((b-a)*((sqrt(5.0)+1.0)/2.0) ...
- jQuery第一课 加载页面弹出一个对话框
<script type="text/javascript"> $(document).ready(function(){ alert("欢迎收看:" ...
- Generator 简介
Generator 就是一种状态机,封装多个内部状态. 执行 Generator 函数会返回一个遍历器对象(),也就是说,Generator 函数除了状态机,还是一个遍历器对象生成函数.返回的遍历器对 ...
- 【Henu ACM Round#24 E】Connected Components
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 要求把连续的一段li..ri的边全都删掉. 然后求剩下的图的联通数 如果暴力的话 复杂度显然是O(k*m)级别的. 考虑我们把li. ...
- 洛谷 P1332 血色先锋队
P1332 血色先锋队 题目描述 巫妖王的天灾军团终于卷土重来,血色十字军组织了一支先锋军前往诺森德大陆对抗天灾军团,以及一切沾有亡灵气息的生物.孤立于联盟和部落的血色先锋军很快就遭到了天灾军团的重重 ...
- poj 2079 Triangle,旋转卡壳求点集的最大三角形
给出一个点集,求顶点在点集中的最大的三角形面积. 我们知道这三角形的三个点肯定在凸包上,我们求出凸包之后不能枚举,由于题目n比較大,枚举的话要O(n^3)的数量级,所以採用旋转卡壳的做法: 首先枚举三 ...
- Oracle创建用户以及备份还原数据库操作
-- Create the user create user XX identified by "" default tablespace USERS temporary tabl ...
- m_Orchestrate learning system---二十三、如何搜索概念图插件
m_Orchestrate learning system---二十三.如何搜索概念图插件 一.总结 一句话总结:要在百度你们搜索前端组件,前端组件 概念图工具,js概念图工具等等这些 用的话用go ...
- Numpy科学计算工具
Numpy初探 Numpy基础数据结构 Numpy数组是一个多维数组,称为ndarray.其由两部分组成: 实际的数据 描述这些数据的原数据 导入该库: import numpy as np 多维数组 ...