步驟:1、用array_values()將陣列轉為索引陣列;2、定義了1個變數來存放最大值,語法「$m=$arr[0];」;3、利用for語句遍歷陣列,語法「for($i=0;$i<陣列長度;$i++){...}」;4、迴圈體中,不斷將「$m」與陣列每個值進行比較,如果值大於「$m」就將該值賦值給「$m」即可,語法「if($arr[$i]>$m){$m=$arr[$i];}」。
php零基礎到就業直播視訊課:進入學習
程式設計師必備介面測試偵錯工具:
本教學操作環境:windows7系統、PHP8.1版、DELL G3電腦
在php中,可以通過在for迴圈中,不斷將$max與陣列每個值($arr[$i])比較;如果大於$max就將該元素賦值給$max即可。
實現步驟:
步驟1:使用array_values()函數將陣列轉為索引陣列
array_values()函數的作用是返回陣列中所有元素的值,使用起來非常簡單,只有一個必選引數$array,就可以返回一個包含給定陣列中所有值的陣列,但不保留鍵名。被返回的陣列將使用索引陣列的形式,陣列的索引從 0 開始且以 1 遞增。
array_values($array)
步驟2:定義了1個變數$max來存放最大值
$max = $arr[0];
步驟3:利用for語句遍歷陣列
for ($i = 0;$i< 陣列長度;$i++){//迴圈陣列 //迴圈體語句塊; }
步驟4:在迴圈體中,不斷將$max與陣列每個值($arr[$i])比較,如果大於$max就將該元素賦值給$max
如果$arr[$i]比$max大,則將$max值賦給$secMax,把$arr[$i]賦給$max,
if ($arr[$i] > $max){ $max = $arr[$i]; }
這樣不斷比較下去,就可以確保$max存放著陣列最大值即可
實現範例程式碼:
<?php header('content-type:text/html;charset=utf-8'); function takeNum($array){ $arr=array_values($array); //定義了1個變數$max來存放最大值 $max = $arr[0]; for ($i = 0;$i< count($arr);$i++){//迴圈陣列 if ($arr[$i] > $max) { $max = $arr[$i]; } } echo "最大值為".$max; } $array = array(1=>"1","a"=>"5",2=>"3","b"=>0,"c"=>"4"); var_dump($array); takeNum($array); ?>
測試一下:
定義了下面一個陣列,呼叫takeNum($array)函數來看看輸出情況
$array = array(0,5,1,429,18,21,52,2,52,9,3,"5"); var_dump($array); takeNum($array);
定義了下面一個陣列,呼叫takeNum($array)函數來看看輸出情況
$array = array(1=>"1","a"=>"5",2=>"3","b"=>0,"c"=>"4"); var_dump($array); takeNum($array);
推薦學習:《》
以上就是php怎麼用for迴圈求陣列最大值的詳細內容,更多請關注TW511.COM其它相關文章!