www.adminn.cn
站长正能量分享网!

PHP中unset,array_splice删除数组中元素的区别

AD:阿里云服务器企业会员更优惠 腾讯云香港,韩国免备案服务器1.8折优惠

php中删除数组元素是非常的简单的,但有时删除数组需要对索引进行一些排序要求我们会使用到相关的函数,这里我们来介绍使用unset,array_splice删除数组中的元素区别吧

如果要在某个数组中删除一个元素,可以直接用的unset,但是数组的索引不会重排:

  1. <?php  
  2. $arr = array('a','b','c','d'); 
  3. unset($arr[1]); 
  4. print_r($arr); 
  5. ?> 

结果是:

Array ( [0] => a [2] => c [3] => d )

那么怎么才能做到缺少的元素会被填补并且数组会被重新索引呢?答案是array_splice():

  1. <?php  
  2. $arr = array('a','b','c','d');  
  3. array_splice($arr,1,1);  
  4. print_r($arr);  
  5. ?> 

结果是:

Array ( [0] => a [1] => c [2] => d )

删除数组中特定元素

  1. <?php 
  2. $arr2 = array(1,3, 5,7,8); 
  3. foreach ($arr2 as $key=>$value
  4.   if ($value === 3) 
  5.     unset($arr2[$key]); 
  6. var_dump($arr2); 
  7. ?> 

补充删除空数组

实例:

  1. <?php 
  2.   $array = ('a' => "abc"'b' => "bcd",'c' =>"cde",'d' =>"def",'e'=>""); 
  3.   array_filter($array); 
  4.   echo "<pre>"
  5.   print_r($array); 
  6. ?> 

结果:

  1. Array ( 
  2.      [a] => abc 
  3.      [b] => bcd 
  4.      [c] => cde 
  5.     [d] => def 

总结

array_splice()函数删除的话,数组的索引值也变化了。

unset()函数删除的话,数组的索引值没有变化。

模板优惠价: (点击购买)
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《PHP中unset,array_splice删除数组中元素的区别》
文章链接:https://www.adminn.cn/news/19695.html
本站资源模板仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。2021.5月起,网站调整,暂不再分享免费模板。谢谢理解

扫码支付后请联系右侧QQ发送下载地址!!

源码请勿用于任何涉灰站点!净化网络,站长更有责!

支付宝扫一扫打赏