在先前的文章中我們介紹了數組去空去重,即刪除數組中的空元素和重複元素的方法,感興趣的可以點擊鏈接進行查閱→《PHP數組學習之怎麼去除空白或重複的元素》。這次我們繼續PHP數組的學習與練習,來聊聊怎麼過濾數組,提取數字元素。
→相關推薦:《PHP數組學習系列大匯總(持續更新~)》
今天本文的主要的內容是:利用PHP來過濾數組,篩選出數字元素(數值或數字字串),然後將它們組合成一個新數組返回。
下面我們要為大家介紹兩種實作方法,先從我們熟悉的方法「foreach循環」開始,然後介紹使用PHP內建函數過濾陣列的方法。
方法1: 利用foreach語句
<?php $array = array("php", 11, '', 12, "PHP中文网",13,"green",2021,"mysql","14",15); foreach($array as $value){ if(is_numeric($value)){ $result[]=$value; } } var_dump($result); ?>
分析程式碼:
使用foreach語句遍歷數組,在每次循環中將鍵值賦給$value
;
#利用is_numeric()
函數偵測$value
$value存入
$results陣列中。
這樣$results數組中的全是$array數組中的數字元素,使用var_dump($result)
,輸出結果為:方法2:使用array_filter() 函數
在先前的文章中,我們已經知道array_filter() 函數可以用回呼函數來過濾數組中的元素,會將數組元素傳遞給回呼函數進行處理。<?php $array = array("php", 11, '', 12, "PHP中文网",13,"green",2021,"mysql","14",15); function filter_number($value){ if(is_numeric($value)){ return TRUE; } } $result=array_filter($array,"filter_number"); var_dump($result); ?>輸出結果為:
#下面來了解array_filter() 函數
array_filter ($array , function callbackfn ($value[, $key]),$mode)
:回呼函數,可省略;若省略回呼函數,則預設過濾空值。
$mode:可省略,決定callback 接收的參數形式:
ARRAY_FILTER_USE_BOTH - callback 同時接受鍵名和鍵值
預設值為 0 ,只傳遞值為 callback 回呼的唯一參數。
###############好了就說到這裡了,有其他想知道的,可以點選這個喔。 → →###php影片教學#########最後推薦給大家一個PHP陣列的免費影片教學:###PHP函數之array陣列函數影片講解###,快來學習吧! ###以上是PHP數組學習提取出數字元素拼接為一個新數組的詳細內容。更多資訊請關注PHP中文網其他相關文章!