Πίνακας PHP: Συνειρμικός, Πολυδιάστατος
⚡ Έξυπνη Σύνοψη
Οι πίνακες PHP αποθηκεύουν πολλές σχετικές τιμές μέσα σε μία μόνο μεταβλητή, διευκολύνοντας την ομαδοποίηση και την επεξεργασία των σχετικών δεδομένων. Αυτή η αναλυτική παρουσίαση καλύπτει αριθμητικούς, συσχετιστικούς και πολυδιάστατους πίνακες, τους τελεστές σύγκρισης πινάκων και βασικές συναρτήσεις όπως count, sort, ksort και asort.

Τι είναι ένας πίνακας PHP;
Ένας πίνακας PHP είναι μια μεταβλητή που αποθηκεύει περισσότερα από ένα κομμάτια σχετικών δεδομένων σε μια μεμονωμένη μεταβλητή.
Σκεφτείτε μια σειρά σαν ένα κουτί με σοκολάτες με υποδοχές μέσα.
Το πλαίσιο αντιπροσωπεύει τον ίδιο τον πίνακα, ενώ τα κενά που περιέχουν σοκολάτες αντιπροσωπεύουν τις τιμές που είναι αποθηκευμένες στον πίνακα.
Τα παρακάτω παραδείγματα δείχνουν πώς λειτουργεί αυτό.
Αριθμητικούς Πίνακες
Οι αριθμητικοί πίνακες χρησιμοποιούν αριθμούς ως κλειδιά πρόσβασης.
Ένα κλειδί πρόσβασης είναι μια αναφορά σε μια υποδοχή μνήμης σε μια μεταβλητή πίνακα.
Το κλειδί πρόσβασης χρησιμοποιείται κάθε φορά που θέλουμε να διαβάσουμε ή να αντιστοιχίσουμε μια νέα τιμή σε ένα στοιχείο πίνακα.
Παρακάτω είναι η σύνταξη για τη δημιουργία ενός αριθμητικού πίνακα σε PHP.
Παράδειγμα πίνακα
<?php $variable_name[n] = value; ?>
Or
<?php
$variable_name = array(n => value, ...);
?>
ΕΔΩ,
- "$variable_name..." είναι το όνομα της μεταβλητής
- Το "[n]" είναι ο αριθμός ευρετηρίου πρόσβασης του στοιχείου
- "τιμή" είναι η τιμή που αποδίδεται στο στοιχείο πίνακα.
Ας δούμε τώρα ένα παράδειγμα αριθμητικού πίνακα.
Ας υποθέσουμε ότι έχουμε 5 ταινίες που θέλουμε να αποθηκεύσουμε σε μεταβλητές πίνακα.
Μπορούμε να χρησιμοποιήσουμε το παράδειγμα που φαίνεται παρακάτω για να το κάνουμε αυτό.
<?php $movie[0] = 'Shaolin Monk'; $movie[1] = 'Drunken Master'; $movie[2] = 'American Ninja'; $movie[3] = 'Once upon a time in China'; $movie[4] = 'Replacement Killers'; ?>
Εδώ,
Σε κάθε ταινία δίνεται ένας αριθμός ευρετηρίου που χρησιμοποιείται για την ανάκτηση ή την τροποποίηση της τιμής της. Παρατηρήστε τον ακόλουθο κώδικα.
<?php $movie[0]="Shaolin Monk"; $movie[1]="Drunken Master"; $movie[2]="American Ninja"; $movie[3]="Once upon a time in China"; $movie[4]="Replacement Killers"; echo $movie[3]; $movie[3] = " Eastern Condors"; echo $movie[3]; ?>
Παραγωγή:
Once upon a time in China Eastern Condors
Όπως μπορείτε να δείτε από τα παραπάνω παραδείγματα, η εργασία με πίνακες στην PHP όταν ασχολείστε με πολλαπλές τιμές της ίδιας φύσης είναι πολύ εύκολη και ευέλικτη.
Εναλλακτικά, οι παραπάνω μεταβλητές πίνακα μπορούν επίσης να δημιουργηθούν χρησιμοποιώντας τον ακόλουθο κώδικα.
<?php $movie = array(0 => "Shaolin Monk", 1 => "Drunken Master", 2 => "American Ninja", 3 => "Once upon a time in China", 4 => "Replacement Killers" ); echo $movie[4]; ?>
Παραγωγή:
Replacement Killers
PHP Associative Array
Οι συσχετιστικοί πίνακες διαφέρουν από τους αριθμητικούς πίνακες με την έννοια ότι οι συσχετιστικοί πίνακες χρησιμοποιούν περιγραφικά ονόματα για τα κλειδιά αναγνώρισης.
Παρακάτω είναι η σύνταξη για τη δημιουργία ενός συσχετιστικού πίνακα στην PHP.
<?php $variable_name['key_name'] = value; $variable_name = array('keyname' => value); ?>
ΕΔΩ,
- "$variable_name..." είναι το όνομα της μεταβλητής
- Το “['key_name']” είναι το κλειδί πρόσβασης του στοιχείου
- "τιμή" είναι η τιμή που αποδίδεται στο στοιχείο πίνακα.
Ας υποθέσουμε ότι έχουμε μια ομάδα ατόμων και θέλουμε να αντιστοιχίσουμε το φύλο κάθε ατόμου στο όνομά του.
Μπορούμε να χρησιμοποιήσουμε έναν συσχετιστικό πίνακα για να το κάνουμε αυτό. Ο παρακάτω κώδικας μας βοηθά σε αυτό.
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); print_r($persons); echo ""; echo "Mary is a " . $persons["Mary"]; ?>
ΕΔΩ,
Παραγωγή:
Array ( [Mary] => Female [John] => Male [Mirriam] => Female ) Mary is a Female
Οι συσχετιστικοί πίνακες είναι επίσης πολύ χρήσιμοι κατά την ανάκτηση δεδομένων από τη βάση δεδομένων.
Τα ονόματα των πεδίων χρησιμοποιούνται ως κλειδιά αναγνώρισης.
PHP Πολυδιάστατοι πίνακες
Αυτοί είναι πίνακες που περιέχουν άλλους ένθετους πίνακες.
Το πλεονέκτημα των πολυδιάστατων πινάκων είναι ότι μας επιτρέπουν να ομαδοποιήσουμε τα σχετικά δεδομένα μαζί.
Ας δούμε τώρα ένα πρακτικό παράδειγμα που υλοποιεί έναν πολυδιάστατο πίνακα PHP.
Ο παρακάτω πίνακας δείχνει μια λίστα ταινιών ανά κατηγορία.
| Τίτλος ταινίας | Κατηγορία |
|---|---|
| Ροζ Πάνθηρας | Κωμωδία |
| John English | Κωμωδία |
| Πεθαίνω δύσκολα | Ενέργειες |
| Expendables | Ενέργειες |
| Ο άρχοντας των δαχτυλιδιών | Έπος |
| Ρωμαίος και Ιουλιέτα | Ρομαντισμός |
| Δες κανένα κακό άκου κανένα κακό | Κωμωδία |
Οι παραπάνω πληροφορίες μπορούν να αναπαρασταθούν ως πολυδιάστατος πίνακας. Ο παρακάτω κώδικας δείχνει την υλοποίηση.
<?php $movies = array( "comedy" => array("Pink Panther", "John English", "See no evil hear no evil"), "action" => array("Die Hard", "Expendables"), "epic" => array("The Lord of the rings"), "Romance" => array("Romeo and Juliet") ); print_r($movies); ?>
ΕΔΩ,
Παραγωγή:
Array ( [comedy] => Array ( [0] => Pink Panther [1] => John English [2] => See no evil hear no evil ) [action] => Array ( [0] => Die Hard [1] => Expendables ) [epic] => Array ( [0] => The Lord of the rings ) [Romance] => Array ( [0] => Romeo and Juliet ) )
Ένας άλλος τρόπος για να ορίσουμε τον ίδιο πίνακα είναι ο εξής.
<?php $film = array( "comedy" => array( 0 => "Pink Panther", 1 => "John English", 2 => "See no evil hear no evil" ), "action" => array ( 0 => "Die Hard", 1 => "Expendables" ), "epic" => array ( 0 => "The Lord of the rings" ), "Romance" => array ( 0 => "Romeo and Juliet" ) ); echo $film["comedy"][0]; ?>
Παραγωγή:
Pink Panther
Σημείωση: ο αριθμητικός πίνακας ταινιών έχει ενσωματωθεί μέσα στον συσχετιστικό πίνακα κατηγοριών.
Πίνακες PHP: Operaκορμοί
| OperaTor | Όνομα | Περιγραφή | Πως να το κάνεις | Παραγωγή |
|---|---|---|---|---|
| x+y | Ένωση | Συνδυάζει στοιχεία και από τους δύο πίνακες |
<?php $x = array('id' => 1); $y = array('value' => 10); $z = $x + $y; ?> |
Πίνακας([id] => 1 [τιμή] => 10) |
| x == y | Ισος | Συγκρίνει δύο πίνακες και επιστρέφει true αν είναι ίσοι |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x == $y) { echo "true"; } else { echo "false"; } ?> |
Σωστό ή 1 |
| x === y | Πανομοιότυπο | Συγκρίνει τόσο τις τιμές και τύπους δεδομένων |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x === $y) { echo "true"; } else { echo "false"; } ?> |
Λάθος ή 0 |
| x != y, x <> y | Όχι ίσο | Επιστρέφει true αν οι δύο πίνακες δεν είναι ίσοι |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x != $y) { echo "true"; } else { echo "false"; } ?> |
Λάθος ή 0 |
| x !== y | Μη πανομοιότυπα | Επιστρέφει true εάν οι δύο πίνακες δεν είναι πανομοιότυποι σε τιμή ή τύπο |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x !== $y) { echo "true"; } else { echo "false"; } ?> |
Σωστό ή 1 |
Λειτουργίες πίνακα PHP
Συνάρτηση μέτρησης
Η συνάρτηση count χρησιμοποιείται για την καταμέτρηση του αριθμού των στοιχείων που περιέχει ένας πίνακας PHP. Ο παρακάτω κώδικας δείχνει την υλοποίηση.
<?php $lecturers = array("Mr. Jones", "Mr. Banda", "Mrs. Smith"); echo count($lecturers); ?>
Παραγωγή:
3
συνάρτηση is_array
Η συνάρτηση is_array χρησιμοποιείται για να προσδιορίσει εάν μια μεταβλητή είναι πίνακας ή όχι. Ας δούμε τώρα ένα παράδειγμα που υλοποιεί τη συνάρτηση is_array.
<?php $lecturers = array("Mr. Jones", "Mr. Banda", "Mrs. Smith"); echo is_array($lecturers); ?>
Παραγωγή:
1
Είδος
Αυτή η συνάρτηση χρησιμοποιείται για την ταξινόμηση πινάκων με βάση τις τιμές τους.
Εάν οι τιμές είναι αλφαριθμητικές, τις ταξινομεί με αλφαβητική σειρά.
Εάν οι τιμές είναι αριθμητικές, τις ταξινομεί με αύξουσα σειρά.
Αφαιρεί τα υπάρχοντα κλειδιά πρόσβασης και προσθέτει νέα αριθμητικά κλειδιά.
Η έξοδος αυτής της συνάρτησης είναι ένας αριθμητικός πίνακας.
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); sort($persons); print_r($persons); ?>
Παραγωγή:
Array ( [0] => Female [1] => Female [2] => Male )
ksort
Αυτή η συνάρτηση χρησιμοποιείται για την ταξινόμηση του πίνακα χρησιμοποιώντας το πλήκτρο. Το παρακάτω παράδειγμα δείχνει τη χρήση του.
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); ksort($persons); print_r($persons); ?>
Παραγωγή:
Array ( [John] => Male [Mary] => Female [Mirriam] => Female )
συλλογή
Αυτός ο διαλογισμός στα λειτουργία χρησιμοποιείται για την ταξινόμηση του πίνακα χρησιμοποιώντας τις τιμές while keeping τα πλήκτρα. Το ακόλουθο παράδειγμα δείχνει τη χρήση του.
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); asort($persons); print_r($persons); ?>
Παραγωγή:
Array ( [Mary] => Female [Mirriam] => Female [John] => Male )
Γιατί να χρησιμοποιήσετε πίνακες;
- Τα περιεχόμενα των πινάκων μπορούν να επεκταθούν για να διατηρήσουν περισσότερες τιμές.
- Οι πίνακες βοηθούν εύκολα στην ομαδοποίηση σχετικών πληροφοριών, όπως τα στοιχεία σύνδεσης στον διακομιστή.
- Οι πίνακες βοηθούν στη σύνταξη καθαρότερου κώδικα.



