在php中數組去除空值的方法有很多種,一種是直接使用函數array_filter()刪除空值,另一種是使用遍歷判斷為空然后利用unset刪除數組.
函數名:array_filter()
調用方式:array_filter($array)
參數說明:$array 是操作的對象,我們將刪除其中的空元素.
實例,代碼如下:
- <?php
- $array = ('a' => "abc", 'b' => "bcd",'c' =>"cde",'d' =>"def",'e'=>"");
- array_filter($array);
- echo "<pre>";
- print_r($array);
- ?>
- //結果:
- Array (
- [a] => abc
- [b] => bcd
- [c] => cde
- [d] => def
- )
foreach或者while的,利用這兩個語法結構來刪除數組中的空元素,簡單代碼如下:
- <?php
- foreach( $arr as $k=>$v){
- if( !$v )//開源代碼Vevb.com
- unset( $arr[$k] );
- }
- ?>
而且自我感覺還挺不錯,只是這樣的效率并不高也曾經試過,先將$arr轉為對象,然后利用對象的特性來刪除,因為:foreach是將當前操作的數組進行copy,每操作一下foreach,都是copy了一個變量,頁面里面如果有太多的foreach,會是一個很大的消耗.
新聞熱點
疑難解答