Πίνακας PHP: Συνειρμικός, Πολυδιάστατος

⚡ Έξυπνη Σύνοψη

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

  • 🧰 Τι κάνουν οι πίνακες: Ένας πίνακας περιέχει πολλαπλές σχετιζόμενες τιμές σε μία μεταβλητή, στις οποίες έχει πρόσβαση μέσω αριθμητικών ή ονομασμένων κλειδιών αντί για πολλές ξεχωριστές μεταβλητές.
  • 🔢 Αριθμητικοί πίνακες: Οι αριθμητικοί πίνακες χρησιμοποιούν κλειδιά ακέραιου δείκτη που ξεκινούν από το μηδέν για να διαβάσουν ή να αντιστοιχίσουν κάθε αποθηκευμένο στοιχείο.
  • 🏷️ Συνειρμικοί Πίνακες: Οι συσχετιστικοί πίνακες χρησιμοποιούν περιγραφικά κλειδιά συμβολοσειρών, τα οποία είναι ιδανικά για τη σύζευξη ονομάτων με τιμές ή αντιστοιχίσεις.ping πεδία βάσης δεδομένων.
  • 🧬 Πολυδιάστατο: Ένας πολυδιάστατος πίνακας ενσωματώνει πίνακες μέσα σε έναν πίνακα, grouping δομημένα δεδομένα όπως ταινίες οργανωμένα ανά κατηγορία.
  • Παράταξη Operators: Ο τελεστής ένωσης συγχωνεύει πίνακες, ενώ ο τελεστής == ελέγχει την ισότητα τιμών και ο τελεστής === ελέγχει επίσης τη σειρά κλειδιών και τους τύπους δεδομένων.
  • 🔧 Συναρτήσεις πίνακα: Οι λειτουργίες count, is_array, sort, ksort και asort αναφέρουν και αναδιατάσσουν τα περιεχόμενα του πίνακα κατά τιμή ή κατά κλειδί.
  • 🤖 AI Assist: Τα εργαλεία τεχνητής νοημοσύνης μπορούν να μετατρέψουν τις γραμμές της βάσης δεδομένων σε συσχετιστικούς πίνακες και να βοηθήσουν στην αντιμετώπιση σφαλμάτων σε περίπλοκες πολυδιάστατες δομές πινάκων.

Πίνακες PHP

Τι είναι ένας πίνακας 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

Σε κάθε ταινία δίνεται ένας αριθμός ευρετηρίου που χρησιμοποιείται για την ανάκτηση ή την τροποποίηση της τιμής της. Παρατηρήστε τον ακόλουθο κώδικα.

<?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"];
?>

ΕΔΩ,

Πίνακας PHP

Παραγωγή:

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);
?>

ΕΔΩ,

Πίνακας PHP

Παραγωγή:

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 )

Γιατί να χρησιμοποιήσετε πίνακες;

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

Συχνές Ερωτήσεις

Ο βρόχος foreach είναι ο πιο συνηθισμένος τρόπος. Γράψτε foreach ($array as $value) για να διαβάσετε κάθε τιμή ή foreach ($array as $key => $value) για να διαβάσετε τόσο το κλειδί όσο και την τιμή κάθε στοιχείου στον πίνακα.

Η sort() αναδιατάσσει τις τιμές και επαναπροσδιορίζει τον πίνακα με νέα αριθμητικά κλειδιά, χάνοντας τα αρχικά κλειδιά. Η asort() ταξινομεί κατά τιμή αλλά διατηρεί κάθε τιμή συνδεδεμένη με το αρχικό της κλειδί, το οποίο έχει σημασία για τους συσχετιστικούς πίνακες.

Χρησιμοποιήστε array_push() ή $arr[] = value για προσθήκη και array_pop() ή array_shift() για αφαίρεση από το τέλος ή την αρχή. Για να διαγράψετε ένα συγκεκριμένο στοιχείο με κλειδί, χρησιμοποιήστε τη συνάρτηση unset().

Ναι. Η Τεχνητή Νοημοσύνη μπορεί να γράψει τον βρόχο fetch που αντιστοιχίζει κάθε γραμμή σε έναν συσχετιστικό πίνακα με κλειδί το όνομα της στήλης και να προτείνει τη χρήση μεθόδων fetch που επιστρέφουν συσχετιστικούς πίνακες απευθείας από το πρόγραμμα οδήγησης της βάσης δεδομένων σας.

Ναι. Επικολλήστε την έξοδο print_r ή var_dump και η Τεχνητή Νοημοσύνη μπορεί να εξηγήσει την ένθεση, να δείξει την ακριβή διαδρομή προς μια τιμή όπως $film['comedy'][0] και να εντοπίσει κλειδιά ή επίπεδα που δεν ταιριάζουν.

Συνοψίστε αυτήν την ανάρτηση με: