__debugInfo मेथड

__debugInfo मेथड तब कॉल की जाती है जब var_dump और print_r फ़ंक्शंस द्वारा ऑब्जेक्ट के बारे में जानकारी आउटपुट की जाती है। इसे उन गुणों के साथ एक ऐरे वापस करना चाहिए जिन्हें प्रदर्शित करने की आवश्यकता है। यह गोपनीय डेटा को छिपाने या अतिरिक्त डीबग जानकारी जोड़ने की अनुमति देता है।

सिंटैक्स

phppublic function __debugInfo(): array

उदाहरण

ऑब्जेक्ट को डंप करते समय गोपनीय डेटा छुपाएं:

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

कोड निष्पादन का परिणाम:

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

उदाहरण

अतिरिक्त डीबग जानकारी जोड़ें:

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

कोड निष्पादन का परिणाम:

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

उदाहरण

प्रदर्शन के लिए गुणों को फ़िल्टर करें:

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

कोड निष्पादन का परिणाम:

phpConfig Object (
  [cacheEnabled] => 1
)

यह भी देखें

  • var_dump फ़ंक्शन,
    जो एक वेरिएबल के बारे में जानकारी आउटपुट करता है
  • print_r फ़ंक्शन,
    जो एक वेरिएबल के बारे में पठनीय जानकारी आउटपुट करता है