Ottimizzazione tramite funzioni integrate in PHP

Supponiamo che un programmatore debba verificare se nell'array è presente il numero 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; // usciamo dal ciclo per evitare iterazioni superflue
    }
  }
  
  var_dump($exists);
?>

Sostengo che ci sia qualcosa che non va in questo codice. Cosa c'è di sbagliato, visto che usciamo dal ciclo dopo aver trovato il numero 3? Il fatto è che le funzioni integrate in PHP sono sempre ordini di grandezza più veloci del codice equivalente scritto manualmente.

Nel nostro caso, esiste la funzione in_array che risolve il problema posto - e dovrebbe essere utilizzata proprio questa funzione:

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

Morale: prima di risolvere un problema, assicurati sempre di controllare se non esista una funzione integrata in PHP per risolverlo.

Задание 1

Nel codice seguente, un programmatore trova la somma degli elementi di un array. Ottimizza la soluzione di questo programmatore.

Ecco il codice:

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

Nel codice seguente, un programmatore trova il prodotto degli elementi di un array. Ottimizza la soluzione di questo programmatore:

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