以下のコードは動作し、正確に何を出力しますか?フレームワーク変数の一部である特定のフィールド($ CustomFields ...)の値を取得するforeachループを作成しました。次に、条件が「グループ」の場合にのみ、そのフィールドをカウントします。 その後、私はすべてのフィールド/カウントの平均価格をhetしたい。コードが動作していますが、最適化を求めています
// ########### Get average hourly rate for group classes
$itemsperhour = array();
$countperhour = 0;
foreach($listings as $listing) {
if ($CustomFields->fieldValue('jr_typeoflesson',$listing,false,false) == 'group') {
$itemsperhour[] = $CustomFields->field('jr_hourlyrateus',$listing,false,false);
$countperhour = $countperhour + 1;
}
}
//print_r($items);
if ($countperhour > 0) {
$totalperhour = array_sum($itemsperhour);
$averageperhour =($totalperhour/$countperhour);
echo round($averageperhour,2);
} else {
echo "No data";
}
unset ($averageperhour);
このように、スニペットが機能します。しかし、私は他の人が(速度と読みやすくするためのコードのように作品を最適化するために、関連する、そのようなスクリプトを記述する方法を求めることができる PHP 5.6+
ジャスパー
'$ listing'が' array'か単にiterableかどうかは不明です。 – localheinz