/ / / Αποτελεσματικοί βρόχοι πρόσθιου μέρους: PHP και σωστές συστοιχίες

Αποτελεσματικοί βρόχοι πρόσθιου μέρους: PHP και κατάλληλες συστοιχίες

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

foreach php

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

Σύνταξη βρόχου περιεχομένου

Διατυπώνοντας τη σύνταξη foreach, η PHP πρότεινε δύοεπιλογές για πρόσβαση σε στοιχεία. Και τα δύο είναι ανεξάρτητα από τον τύπο κλειδιού ή τον τύπο τιμής και μπορούν να εξομοιωθούν με έναν κανονικό βρόχο. Προτείνεται να θεωρηθεί ένας πίνακας ως συλλογή στοιχείων, ο αριθμός των οποίων δεν καθορίζεται αρχικά. Ο πίνακας μπορεί να διαμορφωθεί εν κινήσει, με ή χωρίς κλειδιά. Ένα στοιχείο μπορεί να διαγραφεί σε έναν πίνακα, τα κλειδιά μπορεί να είναι συσχετιστικά και να σχηματίζονται από προεπιλογή.

foreach ($ aArrayName ως $ xValue) {loop body}

Μια τέτοια κατασκευή υποχρεώνει το βρόχο PHP forachεξετάστε όλα τα στοιχεία στη σειρά Στο σώμα του βρόχου, η μεταβλητή $ xValue θα λάβει διαδοχικά όλες τις τιμές του πίνακα $ aArrayName με τη σειρά με την οποία προστέθηκαν. Οι τιμές κλειδιού στοιχείου δεν θα είναι διαθέσιμες.

foreach ($ aArrayName ως $ xKey => $ xValue) {loop body}

Εδώ επίσης, εκτελώντας το foreach build, PHPθα σαρώσει ολόκληρο το περιεχόμενο του πίνακα, αλλά στο σώμα του βρόχου, τόσο η μεταβλητή $ xValue όσο και η μεταβλητή $ xKey, το κλειδί στοιχείου, θα πάρουν αντίστοιχες τιμές σε ζεύγη.

βρόχος php foreach

Ακολουθία στοιχείων

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

Πίνακας php foreach

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

Σύγχρονα "σωστά" στοιχεία

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

Πρακτική, όταν υπάρχει ένα δεδομένο, και το δεδομένο έχει ένα ευρετήριο στη γενική συλλογή παρόμοιων σύμφωνα με ένα συγκεκριμένο κριτήριο, - ήταν χθες.

Το ευρετήριο έχει γίνει κλειδί και ο πίνακας έχει γίνεισυσχετιστικός πίνακας. Δηλαδή, το κλειδί έχασε τη διαδοχική μοναδικότητά του (ήταν συνήθως διαδοχικό: 0, 1, 2, ... n) και έγινε επίσης μια τιμή, αλλά μια απλή τιμή (δηλαδή ένα κλειδί) που σχετίζεται με μια πραγματική τιμή (που είναι, το περιεχόμενο ενός στοιχείου). Αυτό είναι σήμερα, αυτό είναι σωστό, αλλά όχι τέλειο.

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

Σωστές συστοιχίες σωστών στοιχείων

Πρώτα υπήρχε ένα στοιχείο, έπειτα δύο στοιχεία ... έτσι εμφανίστηκε ένας πίνακας στοιχείων και ένας βρόχος μέσω ενός πίνακα αυτών:

για ($ i = 0; $ i <count ($ aArrayName); $ i ++) {

σώμα επεξεργασίας κάθε $ aArrayName [$ i]

}}

Στη συνέχεια, αντί για το απρόσωπο 0, 1, 2, ... n, το στοιχείο πήρε το δικό του όνομα - το κλειδί και, στη συνέχεια, οι συστοιχίες έγιναν συσχετιζόμενες και, στη συνέχεια, χρειάστηκε ο βρόχος μπροστινός - "βρόχος μέσω κάθε":

foreach ($ aArrayName ως $ xKey => $ xValue) {

το σώμα επεξεργασίας κάθε $ aArrayName [$ xKey] ή $ xValue που είναι το ίδιο

}}

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

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