⊗ppSpOtRHO 73 of 83 menu

PHPda Ogʻir Operatsiyalarni Takrorlashni Optimallashtirish

Oldingi darsda funktsiyalarni takroriy chaqirishlar aslida juda oz vaqt oladi va bizning optimallashtirishimiz juda koʻp tejamaydi. Biroq, agar biz bir necha marta "ogʻir" funktsiyani chaqirsak, bu juda yomon boʻladi, chunki u aniq vaqt talab qiladi.

Masalan, faraz qilaylik, bizda sonning boʻluvchilarini topadigan funktsiya bor:

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

Shubhasiz, bu funktsiya ancha "ogʻir". Shuning uchun quyidagi kodni yozish yomon fikr boʻlardi:

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

Albatta, "ogʻir" operatsiyani bajarish yaxshiroqdir bir marta va natijani oʻzgaruvchiga yozing, keyin esa kerakli joylarda ushbu oʻzgaruvchidan foydalaning joylar:

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

Quyida keltirilgan kodni optimallashtiring:

<?php $num = 1233456789; if (getSumSquare($num) >= 10 and getSumSquare($num) <= 100) { echo 'rost'; } else { echo 'rost emas'; } function getSumSquare($num) { $digits = explode('', $num); $sum = 0; foreach ($digits as $digit) { $sum += $digit * $digit; } return $digit; } ?>
Oʻzbek
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекTiếng Việt
Biz sayt ishlashi, tahlil qilish va shaxsiylashtirish uchun cookie-fayllardan foydalanamiz. Ma'lumotlarni qayta ishlash Maxfiylik siyosatiga muvofiq amalga oshiriladi.
hammasini qabul qilish sozlash rad etish