在之前的文章《PHP數組操作之計算數組所有元素和的方法》中詳細的介紹了PHP中怎樣去計算數組內所有元素和的相關知識,本篇文章我們繼續來看看PHP中陣列的知識,看完了怎麼計算陣列的元素和,下面我們來看看怎麼計算陣列的元素乘積。希望對大家有幫助!
在上一篇文章中我們了解了想要計算陣列元素的元素和,可以透過我們一開始了解到的for
迴圈和foreach
循環,這兩種方法有些複雜,在PHP中有內建的array_sum
函數可以對陣列進行計算元素和的操作。
想要計算數組元素的乘積,也很簡單,和計算數組元素和差不多,都可以透過for
循環和foreach
循環,同時PHP中也是有內建的函數array_product
能夠計算陣列元素的乘積,下面我們就分別來介紹這三種方法。
透過for
循環
#在之前的文章《怎麼使用PHP中的For迴圈和Foreach循環(圖文詳解)》中我們已經介紹了PHP中的for
循環,這裡就不做過多的贅述了,我們直接來看一下示例,應該怎樣通過for循環來對陣列元素進行求乘積,範例如下:
<?php $array= array('24','56','180',8,100,'100.1','3.5'); $sum=1; for ($i=0; $i < count($array); $i++) { $sum*=$array[$i]; } echo '通过for循环得到:'. $sum; ?>
輸出結果:
#透過上述範例我們發現,在陣列元素中,不只只有數值的時候,有類似範例中「24」、「56」這樣的字串,並不是數值,也會被轉換成數值加入了求積的隊伍裡。
已經看過上一篇求和的小夥伴可能發現了,程式碼與上一篇不太相同的不僅僅只有求和的過程變了,變數$sum變成了1
,因為是計算相乘的緣故,所以改成了1
。
還有一種情況就是,陣列中的元素不只是數值,如果出現別的字串會出現什麼情況呢?下面我們透過範例來看一下,範例如下:
<?php $array= array('24k','56kg','180cm',8,100,'100.1','3.5'); $sum=1; for ($i=0; $i < count($array); $i++) { $sum*=$array[$i]; } echo '通过for循环得到:'. $sum; ?>
輸出結果:
#上述範例中,陣列中的元素不只是字串了,還有類似「24k」、「56kg」這樣的數值元素的字串,這種情況也是會自動轉換成數值的。
以上便是透過for迴圈來進行陣列元素求積的過程了,接下來我們看一下怎樣透過foreach迴圈來進行求積
透過foreach
循環
照例,我們先透過範例來看foreach
的使用,範例如下:
<?php $array= array('24k','56kg','180cm',8,100,'100.1','3.5'); //通过for循环 $sum=1; for ($i=0; $i < count($array); $i++) { $sum*=$array[$i]; } echo '通过for循环求得数组内元素的积为:'. $sum; echo '<br/>'; //通过foreach循环 $sum1=1; foreach ($array as $value) { $sum1*=$value; } echo '通过foreach循环求得数组内元素的积为:'. $sum1; ?>
輸出結果:
透過上述範例能夠看出,foreach迴圈和for迴圈一樣,都會轉換陣列內的字串元素。下面我們就來介紹一下PHP內建的array_product
函數。
透過array_product
函數
#在PHP中可以透過array_product
函數來對陣列進行求積的計算,array_product
函數的基本語法格式如下:
array_product(array)
其中需要注意的是,參數array就是要進行求積的數組,函數在執行後傳回的結果就是數組內所有元素的乘積。其中這個元素是整數和浮點數。如果這個陣列是個空數組的話,在PHP5.3.6之後回傳的結果就是1
了。
下面我們透過範例來看函數array_product
的使用,範例如下:
<?php $array= array('24k','56kg','180cm',8,100,'100.1','3.5'); //通过for循环 $sum=1; for ($i=0; $i < count($array); $i++) { $sum*=$array[$i]; } echo '通过for循环求得数组内元素的积为:'. $sum; echo '<br/>'; //通过foreach循环 $sum1=1; foreach ($array as $value) { $sum1*=$value; } echo '通过foreach循环求得数组内元素的积为:'. $sum1; echo '<br/>'; //通过array_product函数 echo '通过array_product函数求得数组内元素的积为:'. array_product($array); ?>
輸出結果:
由此我們便透過for
循環、foreach
循環和array_product
函數三種方法計算了數組元素的乘積。
大家如果有興趣的話,可以點選《PHP影片教學》進行更多關於PHP知識的學習。
以上是PHP數組操作之計算數組元素乘積的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!