⊗ppSpOtIF 77 of 83 menu

Оптимизация чрез вградени функции в PHP

Нека един програмист проверява дали в масива има число 5:

<?php $arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; $exists = false; foreach ($arr as $elem) { if ($elem == 5) { $exists = true; break; // ще излезем от цикъла, за да не се върти допълнително } } var_dump($exists); ?>

Аз твърдя, че с този код има нещо нередно. Какво не е наред, ние излизаме от цикъла след като намерихме числото 3? Работата е там, че вградените в PHP функции винаги работят с порядъци по-бързо от аналогичен писан от нулата код.

В нашия случай съществува функцията in_array, която решава поставената задача, - и трябва да се използва именно тази функция:

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

Морал: преди решаването на задача задължително проверете дали няма вградена функция в PHP за нейното решаване.

В следващия код един програмист намира сумата на елементите на масив. Оптимизирайте решението на този програмист.

Ето кода:

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

В следващия код един програмист намира произведението на елементите на масив. Оптимизирайте решението на този програмист:

<?php $arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; $res = 1; foreach ($arr as $elem) { $res *= $elem; } echo $res; ?>
Български
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
Ние използваме бисквитки за работата на сайта, анализ и персонализация. Обработката на данни се извършва в съответствие с Политика за поверителност.
приемам всички настройки отхвърляне