步驟:1、自定義一個函數,用于處理數組,返回成績不及格的元素,語法“function f($n){return($n<60);}”;2、使用array_filter()調用自定義函數來過濾指定數組,語法“array_filter($arr,"f");”,會返回一個過濾后的數組(包含不及格的元素);3、使用count()統計過濾數組的元素個數即可,語法“count(過濾數組)”。
本教程操作環境:windows7系統、PHP8.1版、DELL G3電腦
在一個數組中,存入一些代表成績的數值,怎么求出該數組中成績不及格的個數?
在PHP中,可以利用array_filter()函數和count()函數來求出該數組中成績不及格的元素的個數。
實現步驟:
步驟1:自定義一個函數,設置指定條件來處理數組
成績大于等于60是及格,那么小于60就是不及格。因此自定義函數的條件就是小于60:
function f($num){ return($num<60); }
步驟2:使用array_filter()調用自定義函數處理指定數組,返回成績不及格的元素
array_filter() 函數用回調函數過濾數組中的元素。
該函數把輸入數組中的每個鍵值傳給回調函數。如果回調函數返回 true,則把輸入數組中的當前鍵值返回給結果數組。數組鍵名保持不變。
$res=array_filter($arr,"f");
array_filter()函數會返回過濾后的數組。
步驟3:使用count()函數統計過濾數組的元素的個數
$len=count($res)
過濾數組的元素的個數就是成績不及格(小于60)的元素的個數。
完整示例代碼:
<?php header('content-type:text/html;charset=utf-8'); function f($num){ return($num<60); } $arr=array(95,60,85,59,87,56,55,90,75); var_dump($arr); $res=array_filter($arr,"f"); echo "數組中成績不及格的元素:"; var_dump($res); $len=count($res); echo "成績不及格的元素個數:".$len; ?>
推薦學習:《PHP視頻教程》