⊗ppSpOtEI 76 of 83 menu

PHP-daki artykmaç aýlanyş geçmelerini optimizasiýa etmek

Aşakdaky kodda bir programmaçy massiwde 3 sanynyň bardygyny barlap görýär:

<?php $arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; $exists = false; foreach ($arr as $elem) { if ($elem == 3) { $exists = true; } } var_dump($exists); ?>

Onyň çözgüdi näme üçin ýalňyş? Görünüşde aýlanyşda hiç hili artykmaç amallar ýerine ýetirilmeýär. Problema şonda, 3 sanynyň massiwde bar ekenligi anyklanandan soň - aýlanyş ýene-de massiwden çykançak dowam edýär.

Iň oňat däl boljak ýagdaý, 3 sanynyň massiwiň başyna ýakyn ýerde tapylmagy, massiw bolsa örnegiň, 1000 element uzynlygynda bolmagydyr. Şonda bir müň peýdasyz artykmaç aýlanyş geçmesi boljak! Optimallaýyş däl.

Kody, aýlanyşy wagtında durdurup, optimizasiýa edeliň:

<?php $arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; $exists = false; foreach ($arr as $elem) { if ($elem == 3) { $exists = true; break; } } var_dump($exists); ?>

Aşakdaky kod, jemi 10-dan uly bolýança nak massiw elementini goşmalydygyny hasaplaýar. Optimizasiýany ýerine ýetiriň:

<?php $arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; $sum = 0; $i = 1; foreach ($arr as $elem) { $sum += $elem; if ($sum <= 10) { $i++; } } echo $i; ?>

Aşakdaky kod, berlen aralykdaky jut sanlary çap edýär. Optimizasiýany ýerine ýetiriň:

<?php for ($i = 0; $i <= 100; $i++) { if ($i % 2 === 0) { echo $i; } } ?>

Aşakdaky kod, bir wagtda 2 we 3 sanyna bölünýän sanlary çap edýär. Optimizasiýany ýerine ýetiriň:

<?php for ($i = 0; $i <= 100; $i++) { if ($i % 2 === 0 and $i % 3 === 0) { echo $i; } } ?>
Türkmen
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkçeЎзбекOʻzbekTiếng Việt
Biz sahypanyň işlemegi, analitika we şahsyýetleşdirmek üçin cookie ulanýarys. Maglumatlaryň işlenişi Gizlinlik syýasaty boýunça amala aşyrylýar.
hemmesini kabul et sazlamak ret et