我寫了這個函式來計算我的股票程式中的調和平均數。希望這可以幫助不想使用 PECL 的人。此函式接受無限數量的參數,而無需將它們放入陣列中,這比 PECL 擴充套件處理此函式的方式更好。
<?php
/**
* @author Daniel Morris
*/
function harmonic () {
$num_args = func_num_args ();
for ($i = 0; $i < $num_args; $i++) {
$sum += 1 / func_get_arg ($i);
}
return $num_args / $sum;
}
// 測試
echo harmonic (1, 2, 3, 4, 5);
echo harmonic (-1, 3, 4, 10293);
echo harmonic (-1, -2, -3, -4, -5);
// 2.1897810218978
// -9.6022389365052
// -2.1897810218978
?>