Οι πίνακες στην PHP είναι διατεταγμένοι χάρτες.
Ένας χάρτης είναι μια δομή δεδομένων που συσχετίζει ένα κλειδί με μια τιμή.
Οι πίνακες είναι ευέλικτοι και μπορούν να χρησιμοποιηθούν ως γραμμικός πίνακας (όπως στη C ή στη Java), λίστα [διάνυσμα], πίνακας κατακερματισμού, λεξικό, συλλογή, στοίβα ή ουρά.
Το κλειδί είναι προαιρετικό, αλλά αν δοθεί πρέπει να είναι είτε int είτε string.
Όταν δεν δίνεται κλειδί, η PHP χρησιμοποιεί από προεπιλογή ακέραια κλειδιά σε αύξουσα σειρά, ξεκινώντας από το 0.
$no_keys = ["my", "first", "array"];
$integer_keys = [0 => "my", 1 => "first", 2 => "array"];
$no_keys == $integer_keys // => equal returns true
$no_keys === $integer_keys // => strictly equal returns true
Ένας πίνακας μπορεί να αποθηκεύσει τιμές όλων των τύπων. Κάθε τιμή μπορεί να έχει διαφορετικό τύπο.
Οι πίνακες μπορούν να δηλωθούν ως literal (γραμμένοι στον κώδικα, όπως παραπάνω) ή να δημιουργηθούν και να τροποποιηθούν μέσω συναρτήσεων. Απέκτησε πρόσβαση, ανάθεσε και πρόσθεσε τιμές χρησιμοποιώντας τον τελεστή θέσης:
$prime_numbers = [2, 3, 5, 6];
$prime_numbers[3] = 7; // replace 6 with 7
$prime_numbers[] = 11; // array now contains [2, 3, 5, 7, 11]
Τα ορίσματα μιας συνάρτησης μπορούν να οριστούν έτσι ώστε να δέχεται οποιονδήποτε αριθμό ορισμάτων:
<?php
function actOnItems(...$items) {
// $items is an array containing 0 or more values
// used to call the function.
}
actOnItems(1, 2, 3, 4); // $items => [1, 2, 3, 4]
Σε αυτή την άσκηση πρέπει να υλοποιήσεις μερικές συναρτήσεις για να χειρίζεσαι μια λίστα γλωσσών προγραμματισμού.
Όρισε τη συνάρτηση language_list που δεν παίρνει ορίσματα και επιστρέφει μια κενή λίστα.
<?php
language_list();
// => []
Τροποποίησε τη συνάρτηση language_list, ώστε να παίρνει ένα όρισμα μεταβλητού πλήθους γλωσσών (συμβολοσειρών).
Πρέπει να επιστρέφει τη λίστα που προκύπτει με τις γλώσσες μέσα της.
<?php
$language_list = language_list();
// => []
$language_list = language_list("Clojure", "PHP");
// => ["Clojure", "PHP"]
$language_list = language_list("PHP", "Haskell", "Java", "C++", "Rust")
// => ["PHP", "Haskell", "Java", "C++", "Rust"]
Όρισε τη συνάρτηση add_to_language_list που παίρνει 2 ορίσματα, έναν πίνακα γλωσσών και τη νέα γλώσσα.
<?php
$language_list = language_list();
// => []
$language_list = add_to_language_list($language_list, "Clojure");
// => ["Clojure"]
Όρισε τη συνάρτηση prune_language_list που αφαιρεί την πρώτη γλώσσα από τον πίνακα γλωσσών.
<?php
$language_list = language_list("PHP");
// => ["PHP"]
$language_list = prune_language_list($language_list);
// => []
Όρισε τη συνάρτηση current_language που παίρνει 1 όρισμα (μια λίστα γλωσσών).
Πρέπει να επιστρέφει την πρώτη γλώσσα της λίστας.
Θεώρησε ότι η λίστα θα έχει πάντα τουλάχιστον ένα στοιχείο.
<?php
$language_list = language_list("PHP", "Prolog");
// => ["PHP", "Prolog"]
$first = current_language($language_list);
// => "PHP"
Όρισε τη συνάρτηση language_list_length που παίρνει 1 όρισμα (μια λίστα γλωσσών).
Πρέπει να επιστρέφει τον αριθμό των γλωσσών στη λίστα.
<?php
$language_list = language_list("PHP", "Prolog", "Wren");
// => ["PHP", "Prolog", "Wren"]
language_list_length($language_list);
// => 3
Γράψου στο Exercism για να μάθεις και να κατακτήσεις PHP με 11 έννοιες122 ασκήσεις και πραγματική καθοδήγηση από ανθρώπους, όλα δωρεάν.