PHP中unset,array_splice刪除數(shù)組中元素的區(qū)別
如果要在某個數(shù)組中刪除一個元素,可以直接用的unset,但是數(shù)組的索引不會重排:
<?php $arr = array('a','b','c','d'); unset($arr[1]); print_r($arr); ?>
結(jié)果是:
Array ( [0] => a [2] => c [3] => d )
那么怎么才能做到缺少的元素會被填補并且數(shù)組會被重新索引呢?答案是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); ?>
補充刪除空數(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ù)組的索引值沒有變化。
- php數(shù)組函數(shù)array_push()、array_pop()及array_shift()簡單用法示例
- PHP array_shift()用法實例分析
- php通過array_shift()函數(shù)移除數(shù)組第一個元素的方法
- php中array_slice和array_splice函數(shù)解析
- 解析array splice的移除數(shù)組中指定鍵的值,返回一個新的數(shù)組
- php數(shù)組函數(shù)序列之a(chǎn)rray_splice() - 在數(shù)組任意位置插入元素
- js利用Array.splice實現(xiàn)Array的insert/remove
- Array.slice()與Array.splice()的返回值類型
- php去掉數(shù)組的第一個值的兩個函數(shù):array_shift、array_splice
相關(guān)文章
關(guān)于php程序報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 錯誤的方法
本篇文章是對File size limit exceeded 錯誤進行了詳細的分析介紹,需要的朋友參考下2013-06-06詳解php魔術(shù)方法(Magic methods)的使用方法
有些東西如果不是經(jīng)常使用,很容易忘記,比如魔術(shù)方法和魔術(shù)常量,這篇文章主要介紹了php魔術(shù)方法(Magic methods)的使用方法,感興趣的小伙伴們可以參考一下2016-02-02Apache實現(xiàn)Web Server負載均衡詳解(不考慮Session版)
本篇文章是對使用Apache實現(xiàn)Web Server負載均衡的方法進行了詳細的分析介紹,需要的朋友參考下(不考慮Session版)2013-07-07實戰(zhàn)mysql導(dǎo)出中文亂碼及phpmyadmin導(dǎo)入中文亂碼的解決方法
因為要把本機的gbk編碼的mysql數(shù)據(jù)庫導(dǎo)入到虛擬主機去,服務(wù)商只提供了phpmyadmin供你導(dǎo)入導(dǎo)出。2010-06-06關(guān)于Iframe如何跨域訪問Cookie和Session的解決方法
本篇文章小編將為大家介紹,關(guān)于Iframe如何跨域訪問Cookie和Session的解決方法,有需要的朋友可以參考一下2013-04-04如何在thinkphp中使用windows計劃任務(wù)定時執(zhí)行php文件
這篇文章主要介紹了如何在thinkphp中使用windows計劃任務(wù)定時執(zhí)行php文件,對定時執(zhí)行感興趣的同學(xué),可以參考下2021-04-04