PHP中unset,array_splice刪除數(shù)組中元素的區(qū)別
如果要在某個(gè)數(shù)組中刪除一個(gè)元素,可以直接用的unset,但是數(shù)組的索引不會(huì)重排:
<?php $arr = array('a','b','c','d'); unset($arr[1]); print_r($arr); ?>
結(jié)果是:
Array ( [0] => a [2] => c [3] => d )
那么怎么才能做到缺少的元素會(huì)被填補(bǔ)并且數(shù)組會(huì)被重新索引呢?答案是array_splice():
<?php $arr = array('a','b','c','d'); array_splice($arr,1,1); print_r($arr); ?>
結(jié)果是:
Array ( [0] => a [1] => c [2] => d )
刪除數(shù)組中特定元素
<?php $arr2 = array(1,3, 5,7,8); foreach ($arr2 as $key=>$value) { if ($value === 3) unset($arr2[$key]); } var_dump($arr2); ?>
補(bǔ)充刪除空數(shù)組
實(shí)例:
<?php $array = ('a' => "abc", 'b' => "bcd",'c' =>"cde",'d' =>"def",'e'=>""); array_filter($array); echo "<pre>"; print_r($array); ?>
結(jié)果:
Array (
[a] => abc
[b] => bcd
[c] => cde
[d] => def
)
總結(jié)
array_splice()函數(shù)刪除的話,數(shù)組的索引值也變化了。
unset()函數(shù)刪除的話,數(shù)組的索引值沒(méi)有變化。
- php數(shù)組函數(shù)array_push()、array_pop()及array_shift()簡(jiǎn)單用法示例
- PHP array_shift()用法實(shí)例分析
- php通過(guò)array_shift()函數(shù)移除數(shù)組第一個(gè)元素的方法
- php中array_slice和array_splice函數(shù)解析
- 解析array splice的移除數(shù)組中指定鍵的值,返回一個(gè)新的數(shù)組
- php數(shù)組函數(shù)序列之a(chǎn)rray_splice() - 在數(shù)組任意位置插入元素
- js利用Array.splice實(shí)現(xiàn)Array的insert/remove
- Array.slice()與Array.splice()的返回值類(lèi)型
- php去掉數(shù)組的第一個(gè)值的兩個(gè)函數(shù):array_shift、array_splice
相關(guān)文章
關(guān)于php程序報(bào)date()警告的處理(date_default_timezone_set)
PHP Warning: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function2013-10-10解決File size limit exceeded 錯(cuò)誤的方法
本篇文章是對(duì)File size limit exceeded 錯(cuò)誤進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06詳解php魔術(shù)方法(Magic methods)的使用方法
有些東西如果不是經(jīng)常使用,很容易忘記,比如魔術(shù)方法和魔術(shù)常量,這篇文章主要介紹了php魔術(shù)方法(Magic methods)的使用方法,感興趣的小伙伴們可以參考一下2016-02-02Apache實(shí)現(xiàn)Web Server負(fù)載均衡詳解(不考慮Session版)
本篇文章是對(duì)使用Apache實(shí)現(xiàn)Web Server負(fù)載均衡的方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下(不考慮Session版)2013-07-07實(shí)戰(zhàn)mysql導(dǎo)出中文亂碼及phpmyadmin導(dǎo)入中文亂碼的解決方法
因?yàn)橐驯緳C(jī)的gbk編碼的mysql數(shù)據(jù)庫(kù)導(dǎo)入到虛擬主機(jī)去,服務(wù)商只提供了phpmyadmin供你導(dǎo)入導(dǎo)出。2010-06-06關(guān)于Iframe如何跨域訪問(wèn)Cookie和Session的解決方法
本篇文章小編將為大家介紹,關(guān)于Iframe如何跨域訪問(wèn)Cookie和Session的解決方法,有需要的朋友可以參考一下2013-04-04如何在thinkphp中使用windows計(jì)劃任務(wù)定時(shí)執(zhí)行php文件
這篇文章主要介紹了如何在thinkphp中使用windows計(jì)劃任務(wù)定時(shí)執(zhí)行php文件,對(duì)定時(shí)執(zhí)行感興趣的同學(xué),可以參考下2021-04-04PHP簡(jiǎn)單讀取PDF頁(yè)數(shù)的實(shí)現(xiàn)方法
這篇文章主要介紹了PHP簡(jiǎn)單讀取PDF頁(yè)數(shù)的實(shí)現(xiàn)方法,涉及php針對(duì)文件的讀取及正則運(yùn)算等相關(guān)操作技巧,需要的朋友可以參考下2016-07-07