步驟:1、自定義一個(gè)函數(shù),用于處理數(shù)組,返回成績不及格的元素,語法“function f($n){return($n<60);}”;2、使用array_filter()調(diào)用自定義函數(shù)來過濾指定數(shù)組,語法“array_filter($arr,"f");”,會(huì)返回一個(gè)過濾后的數(shù)組(包含不及格的元素);3、使用count()統(tǒng)計(jì)過濾數(shù)組的元素個(gè)數(shù)即可,語法“count(過濾數(shù)組)”。
本教程操作環(huán)境:windows7系統(tǒng)、PHP8.1版、DELL G3電腦
在一個(gè)數(shù)組中,存入一些代表成績的數(shù)值,怎么求出該數(shù)組中成績不及格的個(gè)數(shù)?
在PHP中,可以利用array_filter()函數(shù)和count()函數(shù)來求出該數(shù)組中成績不及格的元素的個(gè)數(shù)。
實(shí)現(xiàn)步驟:
步驟1:自定義一個(gè)函數(shù),設(shè)置指定條件來處理數(shù)組
成績大于等于60是及格,那么小于60就是不及格。因此自定義函數(shù)的條件就是小于60:
function f($num){ return($num<60); }
步驟2:使用array_filter()調(diào)用自定義函數(shù)處理指定數(shù)組,返回成績不及格的元素
array_filter() 函數(shù)用回調(diào)函數(shù)過濾數(shù)組中的元素。
該函數(shù)把輸入數(shù)組中的每個(gè)鍵值傳給回調(diào)函數(shù)。如果回調(diào)函數(shù)返回 true,則把輸入數(shù)組中的當(dāng)前鍵值返回給結(jié)果數(shù)組。數(shù)組鍵名保持不變。
$res=array_filter($arr,"f");
array_filter()函數(shù)會(huì)返回過濾后的數(shù)組。
步驟3:使用count()函數(shù)統(tǒng)計(jì)過濾數(shù)組的元素的個(gè)數(shù)
$len=count($res)
過濾數(shù)組的元素的個(gè)數(shù)就是成績不及格(小于60)的元素的個(gè)數(shù)。
完整示例代碼:
<?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 "數(shù)組中成績不及格的元素:"; var_dump($res); $len=count($res); echo "成績不及格的元素個(gè)數(shù):".$len; ?>
推薦學(xué)習(xí):《PHP視頻教程》