Βελτιστοποίηση μέσω των ενσωματωμένων συναρτήσεων στην PHP

Ας υποθέσουμε ότι κάποιος προγραμματιστής ελέγχει αν υπάρχει στον πίνακα ο αριθμός 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; // βγαίνουμε από το βρόγχο, για να μην εκτελεστεί περιττά
    }
  }
  
  var_dump($exists);
?>

Ισχυρίζομαι ότι κάτι δεν πάει καλά με αυτόν τον κώδικα. Τι ακριβώς δεν πάει καλά, αφού βγαίνουμε από το βρόγχο αφού βρήκαμε τον αριθμό 3; Το θέμα είναι, ότι οι ενσωματωμένες συναρτήσεις της PHP λειτουργούν πάντα ταχύτερα από τον αντίστοιχο κώδικα που γράφουμε εμείς.

Στη δική μας περίπτωση υπάρχει η συνάρτηση in_array, που λύνει το συγκεκριμένο πρόβλημα, - και πρέπει να χρησιμοποιούμε ακριβώς αυτή τη συνάρτηση:

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

Το ηθικό δίδαγμα: πριν λύσετε ένα πρόβλημα, φροντίστε πάντα να ελέγχετε αν υπάρχει ενσωματωμένη συνάρτηση της PHP για τη λύση του.

Задание 1

Στον επόμενο κώδικα, κάποιος προγραμματιστής βρίσκει το άθροισμα των στοιχείων ενός πίνακα. Βελτιστοποιήστε τη λύση αυτού του προγραμματιστή.

Εδώ είναι ο κώδικας:

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

Στον επόμενο κώδικα, κάποιος προγραμματιστής βρίσκει το γινόμενο των στοιχείων ενός πίνακα. Βελτιστοποιήστε τη λύση αυτού του προγραμματιστή:

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