⊗ppSpOtLO 74 of 83 menu

Optimización de operaciones cíclicas en PHP

Incluso una operación ligera, repetida múltiples veces en un bucle, puede consumir muchos recursos.

Veamos un ejemplo. Supongamos que tenemos un array:

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

Encontremos el promedio de los elementos de este array. Para hacer esto, necesitamos encontrar la suma de los elementos y dividirla por la cantidad. Supongamos que algún programador ya resolvió este problema de la siguiente manera:

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

Analicemos los problemas de esta solución. Técnicamente, el código funciona correctamente y da la respuesta correcta. El hecho es que matemáticamente es correcto tanto dividir la suma total por la cantidad, como dividir cada uno de los sumandos por la cantidad.

Sin embargo, surge otro problema. El asunto es que realizaremos la división tantas veces como elementos haya en nuestro array. Y resulta que estamos haciendo una gran cantidad de operaciones innecesarias, ya que la división podría haberse realizado al final - una vez, dividiendo la suma total encontrada.

Optimicemos nuestro código:

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

Optimice el siguiente código:

<?php for ($i = 1; $i <= 31; $i++) { if ($i === date('d')) { echo "<b>$i</b><br>"; } if ($i !== date('d')) { echo "$i<br>"; } } ?>
Español
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Usamos cookies para el funcionamiento del sitio, análisis y personalización. El procesamiento de datos se realiza de acuerdo con la Política de privacidad.
aceptar todas configurar rechazar