/ / / Εξαγωγή σφαλμάτων στην PHP

Παραγωγή σφαλμάτων στην PHP

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

Πώς λειτουργεί;

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

php εξόδου σφάλματα

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

Προσαρμογή

Για ολόκληρη τη διαμόρφωση του διερμηνέα PHP,php.ini αρχείο. Έχει μια οδηγία error_reporting, η οποία απλά ορίζει την έξοδο των σφαλμάτων στην PHP. Ωστόσο, παρόλο που περιλαμβάνει χειρισμό εξαιρέσεων, το display_errors είναι υπεύθυνο για την εμφάνιση τους στο παράθυρο του προγράμματος περιήγησης. Εάν είναι απενεργοποιημένη, το σύστημα εμφανίζει μια κενή σελίδα αντί για ένα σφάλμα.

Ταξινόμηση των εξαιρέσεων

Η έξοδος των σφαλμάτων στην PHP μπορεί να χωριστεί υπό όρους σε διάφορες κατηγορίες:

  • σφάλματα, με αποτέλεσμα το σενάριο να σταματήσει να λειτουργεί. Το λεγόμενο, θανατηφόρο. Αυτά περιλαμβάνουν το E_ERROR, το E_COMPILE_ERROR;

  • σφάλματα που μπορούν να εξαλειφθούν. Οι τιμές τους για την οδηγία error_reporting μπορούν να είναι: E_WARNING, E_NOTICE και άλλοι.

Αξίζει να μελετήσουμε λεπτομερέστερα κάθε τύπο και να περιγράψουμε τη λειτουργικότητά του.

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

  • E_WARNING. Ο κώδικας θα συνεχίσει να λειτουργεί, αλλά θα εμφανιστεί μια προειδοποίηση ότι υπάρχει κάποιο σφάλμα, ο κώδικας του οποίου εμφανίζεται στο μήνυμα. Δεν είναι κρίσιμο.

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

  • E_USER_ERROR. Λάθη που δημιουργούνται από το χρήστη.

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

Πώς να ενεργοποιήσετε την έξοδο σφαλμάτων στην PHP

Μέθοδος χρήσης μηχανισμών σφάλματος στην PHPμπορεί να διαφέρει ανάλογα με το πού εφαρμόζεται ο κώδικας - σε φιλοξενία ή σε τοπικό υπολογιστή. Στη δεύτερη περίπτωση, ο προγραμματιστής μπορεί να ρυθμίσει τον διακομιστή και την εμφάνισή του όπως επιθυμεί, δηλαδή να αλλάξει τη διαμόρφωση στο αρχείο php.ini. Αρκεί να δώσουμε δύο οδηγίες - display_errors και error_reporting στην παρακάτω φόρμα:

display_errors on

error_reporting E_ALL

Αυτές οι εντολές θα εμφανίζουν όλα τα μηνύματα λάθους απευθείας στο παράθυρο του προγράμματος περιήγησης.

Το php επιτρέπει την αναφορά σφαλμάτων

Εάν η ανάπτυξη πραγματοποιείται σε εικονικόφιλοξενία και, στη συνέχεια, πιο συχνά η λειτουργία εμφάνισης σφάλματος απενεργοποιείται για λόγους ασφαλείας. Επομένως, για να την ενεργοποιήσετε, θα χρειαστεί να χρησιμοποιήσετε το αρχείο ρυθμίσεων του διακομιστή Apache htaccess. Συνήθως βρίσκεται στη ρίζα του ιστότοπου. Θα πρέπει να προσθέσετε μερικές γραμμές σε αυτό χρησιμοποιώντας οποιοδήποτε πρόγραμμα επεξεργασίας κειμένου:

php_flag display_errors σε

αναφορά λάθους php_value -1

Μπορείτε επίσης να εξάγετε σφάλματα απευθείας από τον κώδικα χρησιμοποιώντας τη λειτουργία ini_set (). Ωστόσο, πρέπει να ληφθεί υπόψη ότι μετά την ανάπτυξη του ιστότοπου, η εφαρμογή του μπορεί να προκαλέσει προβλήματα ασφάλειας.

php εξόδου σφάλματα στο αρχείο

Γράψτε στο αρχείο

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

  1. επεξεργαστείτε το αρχείο php.ini. Εδώ πρέπει να ορίσετε δύο γραμμές. Το πρώτο είναι το log_errors = On, το οποίο ενεργοποιεί την ικανότητα εξόδου. Το δεύτερο είναι error_log = διαδρομή / στο επιθυμητό / αρχείο.

  2. Επεξεργασία htaccess. Μπορείτε επίσης να προσθέσετε δύο γραμμές σε αυτό. php_value log_errors "on" και php_value error_log path / στο αρχείο.

  3. Χρησιμοποιήστε τη λειτουργία ini_set στην απαιτούμενη θέση του κώδικα.

Συμπέρασμα

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

Διαβάστε περισσότερα: