找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1677|回复: 0
打印 上一主题 下一主题

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

[复制链接]

2500

主题

2513

帖子

7520

积分

论坛元老

Rank: 8Rank: 8

积分
7520
跳转到指定楼层
楼主
发表于 2018-2-14 05:54:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            如果要在某个数组中删除一个元素,可以直接用的unset,但今天看到的东西却让我大吃一惊
[U]复制代码[/U] 代码如下:
print_r($arr)之后,结果却不是那样的,最终结果是 Array ( [0] => a [2] => c [3] => d )
那么怎么才能做到缺少的元素会被填补并且数组会被重新索引呢?答案是
array_splice():
[U]复制代码[/U] 代码如下:
print_r($arr)之后,结果是A(www.jb51.net)rray ( [0] => a [1] => c [2] => d )
删除数组指定元素
array_search()比较实用
array_search() 函数与 in_array() 一样,在数组中查找一个键值。如果找到了该值,匹配元素的键名会被返回。如果没找到,则返回 false
[U]复制代码[/U] 代码如下:
$array = array('1', '2', '3', '4', '5');
$del_value = 3;
unset($array[array_search($del_value , $array)]);//利用unset删除这个元素
print_r($array);
输出
array('1', '2', '4', '5');
但这种如果要重新索引数组就需要利用foreach遍历删除的数组之后重新建立一个数组这样也是可以的。
            
            
您可能感兴趣的文章:
  • PHP删除数组中特定元素的两种方法
  • PHP删除数组中的特定元素的代码
  • php删除数组元素示例分享
  • PHP删除数组中指定下标的元素方法
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端