在之前的文章《PHP數組運算之怎樣合併數組?常見方法總結》中詳細的介紹了幾種PHP數組操作中常見數組合併的相關知識,本篇文章我們繼續來看一下PHP數組操作的相關知識,希望對大家有幫助!
在上一篇文章中我們介紹了PHP中怎樣來合併數組,其中可以透過array_merge
函數、array_merge_recursive
函數和array_combine
函數來實現,在PHP的陣列運算中還可以計算陣列所有元素的和與乘積。
在PHP中,可以透過for迴圈和foreach循環,以及內建的函數array_sum()來計算陣列所有元素的和。以下我們從最熟悉也最簡單的for迴圈方式開始,一一跟大家介紹實作方法。
透過for
循環
#在我們之前的文章《怎麼使用PHP中的For迴圈和Foreach迴圈(圖文詳解)》中我們介紹了for迴圈語句,有興趣的小夥伴可以點選連結查看,我們直接透過範例來看怎麼透過for迴圈來計算所有元素的和,範例如下:
<?php //通过for循环 $array= array('24k','56kg','180cm',8,100,'100.1','3.1415926'); $sum=0; for ($i=0; $i < count($array); $i++) { $sum+=$array[$i]; } echo '通过for循环得到:'. $sum; ?>
輸出結果:
#如此我們便透過for迴圈來進行計算數組元素和,但是其中需要注意的是,如果在for迴圈中計算的陣列中有一個完全沒有數值的元素在裡面,雖然程式會將它當做0並且輸出結果正常,但是輸出結果會有一個錯誤顯示。
接下面我們再來看一下與for迴圈比較類似的foreach迴圈。
透過foreach
循環
#在上文中提到的文章中不僅介紹了for迴圈也介紹了foreach循環,下面我們就不做過多的陳述了,直接透過範例來看一下怎樣透過foreach函數的使用來計算數組元素和,範例如下:
<?php header("Content-type:text/html;charset=utf-8"); //通过for循环 $array= array('24k','56kg','180cm',8,100,'100.1','3.1415926'); $sum=0; for ($i=0; $i < count($array); $i++) { $sum+=$array[$i]; } echo '通过for循环得到:'. $sum; echo '<br/>'; //通过foreach循环 $sum1=0; foreach ($array as $value) { $sum1+=$value; } echo '通过foreach循环得到:'. $sum1; ?>
輸出結果:
如此我們便透過foreach完成了對陣列進行元素和的計算。透過for迴圈和foreach迴圈來進行數組元素的加法總歸是複雜了一下,在PHP中有一個內建函數array_sum函數就能夠輕鬆地解決這個問題,下面我們就來看一下應該怎樣透過array_sum來計算。
<strong><span style="font-size: 20px;">array_sum()</span></strong>
#函數
透過 array_sum
函數就能夠計算數組中所有元素的和,array_sum
函數的基本語法格式如下:
array_sum(array)
其中需要注意的是,參數array就是需要計算所有元素和的數組,傳回的結果都是以整數或浮點數的結果傳回的,如果這個數組是個空數組的話,回傳的結果就是0
。
如果這個陣列中的元素並不全是數值的話,不是數值的元素的話,PHP這個函數會嘗試將這個元素轉換成一個數值,如果轉換不了,那就當這個數值為0
,這樣的轉換舉個例子,一個字串“10.1”,並不是數值的形式,而是字串,那麼轉換之後就以數值10.1的形式來進行計算元素的和。
下面我們透過範例來看array_sum函數的應用,範例如下:
<?php $a = array(1, 2, 3, 4); echo array_sum($a); ?>
輸出結果:
<?php $b = array(100, '1', "0.01"); echo array_sum($b); ?>輸出結果: 上述範例中,便是將字串的元素進行轉換,字串「0.01」直接轉換成數值0.01,還有一些能夠轉換的和一些不能轉換的陣列元素,範例如下:
<?php $c = array('24k','56kg','180cm','argrg'); echo array_sum($c); ?>輸出結果:
<?php header("Content-type:text/html;charset=utf-8"); //通过array_sum函数 $c = array('24k','56kg','180cm','argrg',8,100,'100.1','3.1415926'); echo '通过array_sum函数得到:' . array_sum($c); echo '<br/>'; //通过for循环 $array= array('24k','56kg','180cm',8,100,'100.1','3.1415926'); $sum=0; for ($i=0; $i < count($array); $i++) { $sum+=$array[$i]; } echo '通过for循环得到:'. $sum; echo '<br/>'; //通过foreach循环 $sum1=0; foreach ($array as $value) { $sum1+=$value; } echo '通过foreach循环得到:'. $sum1; ?>輸出結果:
大家如果有興趣的話,可以點選《PHP影片教學》進行更多關於PHP知識的學習。
以上是PHP數組操作之計算數組所有元素和的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!