在之前的文章《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視頻教程》進行