搜索
首页php教程php手册PHP删除数组元素的具体函数介绍

PHP删除数组元素的具体函数介绍

Jun 13, 2016 am 11:08 AM
php介绍代码使用元素具体函数删除实际我们数组编写进行

我们在使用进行实际代码编写时,经常会和数组打上交道,这对于初学者来说是比较困难的。今天我们就要向大家介绍如何实现PHP删除数组元素。

PHP中的数组要添加元素非常简单,直接用赋值就行了,数组的key会自动增加,但是要删除数组中的元素呢?你想过吗?是不是很少遇到?我近日在处理一个购物篮程序时遇到了要实现PHP删除数组元素的问题,寻找了半天,终于找到了删除数组的方法,其实很简单.
开始我参照一篇文章《字符串数组,删除数组元素》(OSO中有)中的方法,用unset,但是有个缺陷.如$a是一个数组:

<ol class="dp-xml">
<li class="alt"><span><span class="tag"><span> $</span><span class="attribute">a</span><span>=</span><span class="attribute-value">array</span><span>("red", "green", "blue", "yellow");   </span></span></span></li>
<li><span>count($a); //得到4   </span></li>
<li class="alt"><span>unset($a[1]); //删除第二个元素   </span></li>
<li><span>count($a); //得到3   </span></li>
<li class="alt"><span>echo $a[2]; //数组中仅有三个元素,本想得到最后一个元素,但却得到blue,   </span></li>
<li><span>echo $a[1]; //无值   </span></li>
<li class="alt">
<span class="tag">?></span><span>   </span>
</li>
<li><span> </span></li>
</ol>

也就是说在PHP删除数组元素后,数组中的元素个数(用count()得到)变了,但数组下标却没有重新排列,还必须用删除数组前的key来操作相应的值.
后来我采用另一种方法,其实根本就不叫"方法",是用PHP4现成的函数array_splice().

<ol class="dp-xml">
<li class="alt"><span><span class="tag"><span> $</span><span class="attribute">a</span><span>=</span><span class="attribute-value">array</span><span>("red", "green", "blue", "yellow");   </span></span></span></li>
<li><span>count ($a); //得到4   </span></li>
<li class="alt"><span>array_splice($a,1,1); //删除第二个元素   </span></li>
<li><span>count ($a); //得到3   </span></li>
<li class="alt"><span>echo $a[2]; //得到yellow   </span></li>
<li><span>echo $a[1]; //得到blue   </span></li>
<li class="alt">
<span class="tag">?></span><span>   </span>
</li>
<li><span> </span></li>
</ol>

把这个程序和前一个相对比,就可以看到,array_splice()不仅删除了元素,还把元素重排了,这样在数组各元素中间就不会有空值(如前例中的$a[1]).

array_splice()其实是替换数组元素的函数,但如果不加替换值就简单的删除元素.下面是array_splice()的用法:
array array_splice (array input, int offset [, int length [, array replacement]])

参数input是要操作的数组;offset是从第几个元素开始,为正时从第一个元素开始数,为负时从最后一个元素开始数;length为要替换/PHP删除数组元素的个数,省略时就从offset开始到数组结束,也是可正可负,原理和offset一样;relacement为要替换的值.


声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

Atom编辑器mac版下载

Atom编辑器mac版下载

最流行的的开源编辑器

SublimeText3 英文版

SublimeText3 英文版

推荐:为Win版本,支持代码提示!

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

mPDF

mPDF

mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

Dreamweaver Mac版

Dreamweaver Mac版

视觉化网页开发工具