⊗ppSpOtLO 74 of 83 menu

Optimierung zyklischer Operationen in PHP

Sogar eine leichte Operation, die mehrfach in einer Schleife wiederholt wird, kann viele Ressourcen verbrauchen.

Schauen wir uns ein Beispiel an. Nehmen wir an, wir haben ein Array:

<?php $arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; ?>

Lassen Sie uns den Durchschnitt der Elemente dieses Arrays finden. Dazu müssen wir die Summe der Elemente finden und durch die Anzahl teilen. Nehmen wir an, ein Programmierer hat diese Aufgabe bereits wie folgt gelöst:

<?php $sum = 0; foreach ($arr as $elem) { $sum += $elem / count($arr); } echo $sum; ?>

Lassen Sie uns die Probleme dieser Lösung betrachten. Technisch gesehen funktioniert der Code korrekt und liefert das richtige Ergebnis. Tatsache ist, dass es mathematisch korrekt ist, sowohl die gesamte Summe durch die Anzahl zu teilen, als auch jeden Summanden durch die Anzahl zu teilen.

Es entsteht jedoch ein anderes Problem. Tatsache ist, dass wir die Division so oft durchführen werden, wie es Elemente in unserem Array gibt. Und es stellt sich heraus, dass wir eine große Anzahl überflüssiger Operationen durchführen, da die Division doch am Ende hätte durchgeführt werden können - nur einmal, indem man die gesamte gefundene Summe teilt.

Optimieren wir unseren Code:

<?php $sum = 0; foreach ($arr as $elem) { $sum += $elem; } echo $sum / count($arr); ?>

Optimieren Sie den untenstehenden Code:

<?php for ($i = 1; $i <= 31; $i++) { if ($i === date('d')) { echo "<b>$i</b><br>"; } if ($i !== date('d')) { echo "$i<br>"; } } ?>
Deutsch
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wir verwenden Cookies für den Betrieb der Website, Analyse und Personalisierung. Die Datenverarbeitung erfolgt gemäß der Datenschutzerklärung.
alle akzeptieren anpassen ablehnen