首頁 >後端開發 >PHP問題 >php數組中指定一列求和用什麼函數

php數組中指定一列求和用什麼函數

青灯夜游
青灯夜游原創
2023-01-07 17:42:293740瀏覽

php陣列中指定一列求和用array_column()和array_sum()函數。步驟:1、用array_column()取得數組中指定一列的全部元素,語法“array_column(數組, '指定列名')”,會傳回一個包含全部元素的結果數組;2、用array_sum()函數計算結果數組中所有元素的和即可,語法「array_sum(結果數組)」。

php數組中指定一列求和用什麼函數

本教學操作環境:windows7系統、PHP8版、DELL G3電腦

php陣列中指定一列求和用array_column ()和array_sum()函數。

  • array_column()函數可以取得陣列中指定一列的全部元素

  • array_sum()函數可計算數組中所有元素的和

實現步驟:

#步驟1:使用array_column()函數指定數組中指定一列的值

array_column() 可以傳回指定數組中某個單一列的值;會傳回一個數組,數組值為就是指定一列的值。

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$user = array(
 &#39;0&#39; => array(&#39;id&#39; => 100, &#39;username&#39; => &#39;a1&#39;),
 &#39;1&#39; => array(&#39;id&#39; => 101, &#39;username&#39; => &#39;a2&#39;),
 &#39;2&#39; => array(&#39;id&#39; => 102, &#39;username&#39; => &#39;a3&#39;),
 &#39;3&#39; => array(&#39;id&#39; => 103, &#39;username&#39; => &#39;a4&#39;),
 &#39;4&#39; => array(&#39;id&#39; => 104, &#39;username&#39; => &#39;a5&#39;),
);
var_dump($user);
$id=array_column($user, &#39;id&#39;);
var_dump($id);
?>

php數組中指定一列求和用什麼函數

步驟2:使用array_sum()對結果陣列求和

array_sum() 函數可以計算指定陣列中所有元素的和

$sum=array_sum($id);
echo "多维数组中id列的和:".array_sum($id);

php數組中指定一列求和用什麼函數

擴展知識:array_product()函數

array_sum()函數可以計算數組元素總和,而array_product()函數可以計算數組元素乘積。

<?php
$array= array(2,3,4);
echo &#39;2 * 3 * 4 = &#39;. array_product($array);

$array= array(3,4,5);
echo &#39;<br>3 * 4 * 5 = &#39;. array_product($array);

$array= array(1,2,3,4,5,6,7,8,9,10);
echo &#39;<br>1 * 2 * 3 *...* 9 * 10 = &#39;. array_product($array);
?>

輸出結果:

php數組中指定一列求和用什麼函數

如果$array中存在非數值類型的元素,那麼PHP會將它們轉換成一個數值(隱性資料型別轉換),轉換失敗就當作0 值。

<?php
$array= array(2,"3.1",4);
echo &#39;2 * 3.1 * 4 = &#39;. array_product($array);

$array= array(3,"10.abc",5);
echo &#39;<br>3 * "10.abc" * 5 = 3 * 10 * 5 =&#39;. array_product($array);

$array= array(3,"hello",5);
echo &#39;<br>3 * "hello" * 5 = 3 * 0 * 5 =&#39;. array_product($array);
?>
  • 字串"3.1"會轉換成小數 3.1 ,所以第一個陣列的元素乘積為24.8。

  • 字串 "10abc" 會轉換成整數 10,所以第二個陣列的元素乘積為150。

  • 字串「hello」無法轉換成整數,因此作為 0 值,繼而第三個陣列的元素乘積為0。

輸出結果:

php數組中指定一列求和用什麼函數

推薦學習:《PHP影片教學

以上是php數組中指定一列求和用什麼函數的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn