
Σήμερα, θα μάθουμε πώς να διορθώσουμε το 'php χρησιμοποιώντας το $this όταν δεν βρίσκεται σε περιβάλλον αντικειμένου'. Αυτό είναι ένα από τα κοινά προβλήματα που αντιμετωπίζουν οι νέοι προγραμματιστές PHP.
Τι είναι αυτό $
$αυτός είναι ένας δείκτης που αναφέρεται στο τρέχον αντικείμενο της κλάσης. Τρέχον αντικείμενο σημαίνει αντικείμενο που χρησιμοποιεί τη συνάρτηση.
Θα μπορούσαν να υπάρχουν πολλά αντικείμενα στην ενιαία καθορισμένη κλάση. Αυτό δημιουργεί τη δυνατότητα χρήσης μιας μεμονωμένης συνάρτησης από διαφορετικά αντικείμενα.
Κατά τον ορισμό, δεν είμαστε σίγουροι για τα πιθανά ονόματα των αντικειμένων. $αυτό μας παρέχει ευελιξία όσον αφορά την αναφορά σε διαφορετικά αντικείμενα.
Για παράδειγμα, δημιουργούμε κάποια κλάση 'Animal'. Η κλάση έχει ορισμένα μέλη δεδομένων και μερικές μεθόδους. Παρακάτω είναι ένα γενικό παράδειγμα.
Class Animal { // Some code }
Ας υποθέσουμε ότι έχουμε μια μέθοδο κλάσης που ονομάζεται 'Walk' η οποία έχει έναν συγκεκριμένο κωδικό για την εκτέλεση μιας συγκεκριμένης εργασίας. Τώρα αυτή η μέθοδος 'Walk' θα χρησιμοποιείται από διαφορετικά αντικείμενα.
Δεν είμαστε σίγουροι για τα πιθανά ονόματα για την αναφορά, αλλά ο δείκτης '$this' μας έχει προσφέρει ευκολία με αναφορά σε οποιοδήποτε πιθανό αντικείμενο της κλάσης.
Class Animal { Walk() { $this->………………. } }
Τώρα ας υποθέσουμε ότι, μετά τον ορισμό της κλάσης, ένα αντικείμενο με το όνομα 'Cat' και 'Cow' έχει δημιουργηθεί από τον χρήστη αυτής της κλάσης.
Παρόλο που η μέθοδος 'Walk' εκτελεί την ίδια εργασία αλλά για διαφορετικά αντικείμενα. $αυτό κάνει την αναφορά μας πιο εύκολη και βολική.
ΑΝΟΙΞΕ
Αν και το $this μας διευκολύνει στο Αντικειμενοστρεφές Παράδειγμα (OOP), αλλά αυτό μπορεί να χρησιμοποιηθεί κατά λάθος στο διαδικαστικό παράδειγμα.
Οι νέοι εκπαιδευόμενοι προγραμματισμού συνήθως ξεκινούν με το διαδικαστικό/λειτουργικό παράδειγμα. Αλλά το OOP χρησιμοποιείται κυρίως. Οι προγραμματιστές διαδικασίας το βρίσκουν πολύ εύκολο όταν προγραμματίζουν στο OOP.
Έτσι, χρησιμοποιούν το OOP όλο και περισσότερο. Η χρήση του OOP όλο και πιο αργά τους κάνει να ξεχνούν λειτουργικές έννοιες.
Αν και το OOP είναι ένα νέο παράδειγμα, μπορεί επίσης να χρειαστεί λειτουργικό. Η χρήση του λειτουργικού μετά από μεγάλο χρονικό διάστημα μπορεί να οδηγήσει σε διάφορα λάθη, ένα από τα οποία είναι η 'χρήση του $this στο διαδικαστικό παράδειγμα'.
Η λύση στο πρόβλημα είναι να είστε προσεκτικοί κατά τη χρήση του διαδικαστικού παραδείγματος.
Η αναθεώρηση των εννοιών θα μπορούσε να είναι καλή ιδέα πριν ξεκινήσετε τον προγραμματισμό. Τα περισσότερα ζητήματα προγραμματισμού είναι αποτέλεσμα απρογραμμάτιστου προγραμματισμού.
Οι προγραμματιστές πρέπει να περάσουν από όλα τα στάδια ανάπτυξης λογισμικού είτε το λογισμικό είναι απλό είτε σύνθετο.