Αναδρομή με παράμετρο στην PHP

Ας χρησιμοποιήσουμε αναδρομή για να εμφανίσουμε διαδοχικά τα στοιχεία ενός πίνακα. Ας υποθέσουμε ότι ο πίνακας αρχικά μεταβιβάζεται ως παράμετρος στη συνάρτηση:

php<?php
  func([1, 2, 3]);
?>

Ας χρησιμοποιήσουμε προς το παρόν χωρίς αναδρομή τη συνάρτηση array_shift για να εμφανίσουμε όλα τα στοιχεία του πίνακα ένα προς ένα:

php<?php
  function func($arr) {
    var_dump(array_shift($arr)); // θα εμφανίσει 1
    var_dump($arr); // θα εμφανίσει [2, 3] - ο πίνακας μείωσε
    
    var_dump(array_shift($arr)); // θα εμφανίσει 2
    var_dump($arr); // θα εμφανίσει [3] - ο πίνακας μείωσε
    
    var_dump(array_shift($arr)); // θα εμφανίσει 3
    var_dump($arr); // θα εμφανίσει [] - ο πίνακας είναι άδειος
  }
  
  func([1, 2, 3]);
?>

Όπως βλέπετε, η συνάρτηση array_shift αφαιρεί και επιστρέφει το πρώτο στοιχείο του πίνακα, ενώ ταυτόχρονα ο ίδιος ο πίνακας μειώνεται κατά αυτό το στοιχείο.

Ας χρησιμοποιήσουμε τώρα αναδρομή:

php<?php
  function func($arr) {
    var_dump(array_shift($arr));
    var_dump($arr);
    
    if (count($arr) !== 0) {
      func($arr);
    }
  }
  
  func([1, 2, 3]);
?>

Στην πραγματικότητα, φυσικά, είναι πιο εύκολο να διατρέξετε τα στοιχεία ενός πίνακα με βρόχο. Τα παραπάνω παραδείγματα απλά δείχνουν τη λειτουργία της αναδρομής σε απλά παραδείγματα (όχι πραγματικά). Πιο χρήσιμα παραδείγματα εφαρμογής της αναδρομής είναι απλά πιο περίπλοκα, θα τα αναλύσουμε λίγο παρακάτω.

Задание 1

Δίνεται ο πίνακας:

php<?php
  $arr = ['a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5];
?>

Χρησιμοποιώντας αναδρομή, εμφανίστε τα στοιχεία αυτού του πίνακα στην οθόνη.