Optimalizácia pomocou vstavaných funkcií v PHP

Nech nejaký programátor kontroluje, či sa v poli nachádza číslo 5:

php<?php
  $arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
  
  $exists = false;
  foreach ($arr as $elem) {
    if ($elem == 5) {
      $exists = true;
      break; // ukončíme cyklus, aby sa zbytočne neopakoval
    }
  }
  
  var_dump($exists);
?>

Tvrdím, že s týmto kódom je niečo nesprávne. Čo je zlé, veď z cyklu vyskočíme potom, čo nájdeme číslo 3? Vec sa má tak, že vstavané funkcie v PHP vždy pracujú rádovo rýchlejšie ako podobný vlastný kód.

V našom prípade existuje funkcia in_array, ktorá rieši zadanú úlohu, - a používať treba práve túto funkciu:

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

Poučenie: pred riešením úlohy určite skontrolujte, či pre jej riešenie existuje vstavaná funkcia PHP.

Задание 1

V nasledujúcom kóde nejaký programátor hľadá súčet prvkov poľa. Optimalizujte riešenie tohto programátora.

Tu je kód:

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

V nasledujúcom kóde nejaký programátor hľadá súčin prvkov poľa. Optimalizujte riešenie tohto programátora:

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