在之前的文章《PHP數(shù)組操作之計算數(shù)組所有元素和的方法》中詳細的介紹了PHP中怎樣去計算數(shù)組內(nèi)所有元素和的相關(guān)知識,本篇文章我們繼續(xù)來看一下PHP中數(shù)組的知識,看完了怎么計算數(shù)組的元素和,下面我們看一下怎么計算數(shù)組的元素乘積。希望對大家有幫助!
在上一篇文章中我們了解了想要計算數(shù)組元素的元素和,可以通過我們一開始了解到的for
循環(huán)和foreach
循環(huán),這兩種方法有些復(fù)雜,在PHP中有內(nèi)置的array_sum
函數(shù)可以對數(shù)組進行計算元素和的操作。
想要計算數(shù)組元素的乘積,也很簡單,和計算數(shù)組元素和差不多,都可以通過for
循環(huán)和foreach
循環(huán),同時PHP中也是有內(nèi)置的函數(shù)array_product
能夠計算數(shù)組元素的乘積,下面我們就分別來介紹一下這三種方法。
通過for
循環(huán)
在之前的文章《怎樣使用PHP中的For循環(huán)和Foreach循環(huán)(圖文詳解)》中我們已經(jīng)介紹了PHP中的for
循環(huán),這里就不做過多的贅述了,我們直接來看一下示例,應(yīng)該怎樣通過for循環(huán)來對數(shù)組元素進行求乘積,示例如下:
<?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循環(huán)得到:'. $sum; ?>
輸出結(jié)果:
通過上述示例我們發(fā)現(xiàn),數(shù)組元素中,不僅僅只有數(shù)值的時候,有類似于示例中“24”、“56”這樣的字符串,并不是數(shù)值,也會被轉(zhuǎn)換成數(shù)值加入了求積的隊伍里。
已經(jīng)看過上一篇求和的小伙伴可能發(fā)現(xiàn)了,代碼與上一篇不太相同的不僅僅只有求和的過程變了,變量$sum變成了1
,因為是計算相乘的緣故,所以改成了1
。
還有一種情況就是,數(shù)組中的元素不僅僅是數(shù)值,如果出現(xiàn)別的字符串會出現(xiàn)什么情況呢?下面我們通過示例來看一下,示例如下:
<?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循環(huán)得到:'. $sum; ?>
輸出結(jié)果:
上述示例中,數(shù)組中的元素不僅僅是字符串了,還有類似“24k”、“56kg”這樣的帶有數(shù)值元素的字符串,這種情況下也是會自動轉(zhuǎn)化為數(shù)值的。
以上便是通過for循環(huán)來進行數(shù)組元素求積的過程了,接下來我們看一下怎樣通過foreach循環(huán)來進行求積
通過foreach
循環(huán)
照例,我們先通過示例來看一下foreach
的使用,示例如下:
<?php $array= array('24k','56kg','180cm',8,100,'100.1','3.5'); //通過for循環(huán) $sum=1; for ($i=0; $i < count($array); $i++) { $sum*=$array[$i]; } echo '通過for循環(huán)求得數(shù)組內(nèi)元素的積為:'. $sum; echo '<br/>'; //通過foreach循環(huán) $sum1=1; foreach ($array as $value) { $sum1*=$value; } echo '通過foreach循環(huán)求得數(shù)組內(nèi)元素的積為:'. $sum1; ?>
輸出結(jié)果:
通過上述示例能夠看出,foreach循環(huán)和for循環(huán)一樣,都會轉(zhuǎn)換數(shù)組內(nèi)的字符串元素。下面我們就來介紹一下PHP中內(nèi)置的array_product
函數(shù)。
通過array_product
函數(shù)
在PHP中可以通過array_product
函數(shù)來對數(shù)組進行求積的計算,array_product
函數(shù)的基本語法格式如下:
array_product(array)
其中需要注意的是,參數(shù)array就是要進行求積的數(shù)組,函數(shù)運行后返回的結(jié)果就是數(shù)組內(nèi)所有元素的乘積。其中這個元素是整數(shù)和浮點數(shù)。如果這個數(shù)組是個空數(shù)組的話,在PHP5.3.6之后返回的結(jié)果就是1
了。
下面我們通過示例來看一下函數(shù)array_product
的使用,示例如下:
<?php $array= array('24k','56kg','180cm',8,100,'100.1','3.5'); //通過for循環(huán) $sum=1; for ($i=0; $i < count($array); $i++) { $sum*=$array[$i]; } echo '通過for循環(huán)求得數(shù)組內(nèi)元素的積為:'. $sum; echo '<br/>'; //通過foreach循環(huán) $sum1=1; foreach ($array as $value) { $sum1*=$value; } echo '通過foreach循環(huán)求得數(shù)組內(nèi)元素的積為:'. $sum1; echo '<br/>'; //通過array_product函數(shù) echo '通過array_product函數(shù)求得數(shù)組內(nèi)元素的積為:'. array_product($array); ?>
輸出結(jié)果:
由此我們便通過for
循環(huán)、foreach
循環(huán)和array_product
函數(shù)三種方法計算出了數(shù)組元素的乘積。
大家如果感興趣的話,可以點擊《PHP視頻教程》進行