⊗ppSpOtRHO 73 of 83 menu

PHP'де оор операцияларды кайталоону оптималдаштыруу

Алдыңкы сабакта функцияларды кайра-кайра чакыруу чындыгында өтө аз убакытты талап кылат жана биздин оптимизациябыз абдан көп үнөмдөбөйт. Бирок, бир нече жолу "оор" функцияны чакырсак, анда абалыбыз бир топ начар болот, ал жеткиликтүү узак убакытка иштейт.

Мисалы, бизде сандын бөлүүчүлөрүн тапкан функция бар деп коёлу:

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

Бул функциянын "оор" экени айкын. Ошондуктан мындай код жазуу жаман идея болот:

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

Албетте, "оор" операцияны бир жолу иштетүү жана натыйжасын өзгөрмөгө жазуу, андан кийин бул өзгөрмөнү керектуу жерлерде колдонуу жакшыраак:

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

Төмөндө келтирилген кодду оптималдаштырыңыз:

<?php $num = 1233456789; if (getSumSquare($num) >= 10 and getSumSquare($num) <= 100) { echo 'туура'; } else { echo 'туура эмес'; } function getSumSquare($num) { $digits = explode('', $num); $sum = 0; foreach ($digits as $digit) { $sum += $digit * $digit; } return $digit; } ?>
Кыргызча
AfrikaansAzə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
Биз сайттин иштөөсү, аналитика жана персонализация үчүн cookie файлдарын колдонобуз. Маалыматтарды иштетүү Маалыматты коргоо саясаты боюнча жүргүзүлөт.
баарын кабыл алуу ыңгайлаштыруу четке кагуу