361 of 410 menu

Μέθοδος __debugInfo

Η μέθοδος __debugInfo καλείται όταν εμφανίζεται πληροφορία για ένα αντικείμενο από τις συναρτήσεις var_dump και print_r. Πρέπει να επιστρέφει έναν πίνακα με τις ιδιότητες, που πρέπει να εμφανιστούν. Αυτό επιτρέπει την απόκρυψη ευαίσθητων δεδομένων ή την προσθήκη επιπλέον πληροφοριών εντοπισμού σφαλμάτων.

Σύνταξη

public function __debugInfo(): array

Παράδειγμα

Απόκρυψη ευαίσθητων δεδομένων κατά την εμφάνιση αντικειμένου:

<?php class User { private $password; public $name; public function __construct($name, $password) { $this->name = $name; $this->password = $password; } public function __debugInfo() { return [ 'name' => $this->name, 'password' => '******' ]; } } $user = new User('John', 'secret123'); var_dump($user); ?>

Αποτέλεσμα εκτέλεσης κώδικα:

object(User)#1 (2) { ["name"]=> string(4) "John" ["password"]=> string(6) "******" }

Παράδειγμα

Προσθήκη επιπλέον πληροφοριών εντοπισμού σφαλμάτων:

<?php class Product { public $id; public $price; public function __construct($id, $price) { $this->id = $id; $this->price = $price; } public function __debugInfo() { return [ 'id' => $this->id, 'price' => $this->price, 'price_with_tax' => $this->price * 1.2 ]; } } $product = new Product(101, 100); var_dump($product); ?>

Αποτέλεσμα εκτέλεσης κώδικα:

object(Product)#1 (3) { ["id"]=> int(101) ["price"]=> int(100) ["price_with_tax"]=> float(120) }

Παράδειγμα

Φιλτράρισμα ιδιοτήτων για εμφάνιση:

<?php class Config { private $dbHost = 'localhost'; private $dbUser = 'admin'; private $cacheEnabled = true; public function __debugInfo() { return [ 'cacheEnabled' => $this->cacheEnabled ]; } } $config = new Config(); print_r($config); ?>

Αποτέλεσμα εκτέλεσης κώδικα:

Config Object ( [cacheEnabled] => 1 )

Δείτε επίσης

  • τη συνάρτηση var_dump,
    που εμφανίζει πληροφορίες για μια μεταβλητή
  • τη συνάρτηση print_r,
    που εμφανίζει αναγνώσιμες πληροφορίες για μια μεταβλητή
Ελληνικά
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Χρησιμοποιούμε cookie για τη λειτουργία του ιστότοπου, την ανάλυση και την εξατομίκευση. Η επεξεργασία των δεδομένων γίνεται σύμφωνα με την Πολιτική Απορρήτου.
αποδοχή όλων ρύθμιση απόρριψη