⊗ppSpOtRHO 73 of 83 menu

Optimalisering van Herhalende Swaar Operasies in PHP

In die vorige les het herhaalde funksie-oproepe eintlik baie min tyd geneem en ons optimalisering sal nie baie bespaar nie. Eger, alles sal baie erger wees as ons verskeie keer 'n "swaar" funksie oproep wat lank neem om uit te voer.

Laat ons byvoorbeeld 'n funksie hê wat die delers van 'n getal vind:

<?php function getDivisors($num) { $result = []; for ($i = 1; $i <= $num; $i++) { if ($num % $i == 0) { $result[] = $i; } } return $result; } ?>

Dit is duidelik dat hierdie funksie redelik "swaar" is. Dus sal dit 'n slegte idee wees om so 'n kode te skryf:

<?php $num = 123456; if (array_sum(getDivisors($num)) >= 10 and array_sum(getDivisors($num)) <= 100) { } else { } ?>

Dit is beter, natuurlik, om die "swaar" operasie een keer uit te voer en die resultaat in 'n veranderlike te stoor, en dan daardie veranderlike op die nodige plekke te gebruik:

<?php $num = 123456; $sum = array_sum(getDivisors($num)); if ($sum >= 10 and $sum <= 100) { } else { } ?>

Optimaliseer die onderstaande kode:

<?php $num = 1233456789; if (getSumSquare($num) >= 10 and getSumSquare($num) <= 100) { echo 'correct'; } else { echo 'incorrect'; } function getSumSquare($num) { $digits = explode('', $num); $sum = 0; foreach ($digits as $digit) { $sum += $digit * $digit; } return $digit; } ?>
Afrikaans
AzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικά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
Ons gebruik koekies vir die werking van die webwerf, ontleding en personalisering. Die verwerking van data geskied volgens die Privaatheidsbeleid.
aanvaar alles instel verwerp