Using __construct() and __destruct() In Hindi
पीएचपी प्रोग्रामिंग में ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग कांसेप्ट में यूजर डिफाइन क्लास डाटा टाइप के लिए कंस्ट्रक्टर और डिस्ट्रक्टर स्पेशल यूनिक क्लास मेथड या फंक्शन होते हैं, जो प्रोग्रामर को किसी क्लास ऑब्जेक्ट के क्रिएट होने या डिस्ट्रॉय होने पर आटोमेटिक आर्डर में कॉल होते हैं। पीएचपी प्रोग्रामिंग में __construct() और __destruct() फंक्शन क्लास मेथड का यूज़ नए ऑब्जेक्ट क्रिएट और ओल्ड ऑब्जेक्ट को डिस्ट्रॉय करने में किया जाता है।

So, let’s get to know the __construct() and __destruct() class methods in PHP programming better.
__construct() – Constructor in PHP Programming.
What is a Constructor in PHP Programming?
पीएचपी प्रोग्रामिंग में __construct() क्लास मेथड पीएचपी लैंग्वेज में एक स्पेशल यूनिक क्लास ऑब्जेक्ट कंस्ट्रक्शन मेथड है, जो यूजर डिफाइन किसी क्लास ऑब्जेक्ट के नए इंस्टेंटिएट क्रिएट होने पर आटोमेटिक आर्डर में कॉल हो जाता है। क्लास में कंस्ट्रक्टर मेथड का यूज़ सामान्यता रूप से नए क्लास ऑब्जेक्ट के क्रिएट होने पर ऑब्जेक्ट प्रॉपर्टीज़ को इनिशियलाइज़ करने या सेटअप टास्क को परफॉर्म करने में किया जाता है।
Syntax of the constructor method.
public function __construct([parameters])
पीएचपी क्लास प्रोग्राम में कंस्ट्रक्टर मेथड उन आर्गुमेंट पैरामीटर्स को एक्सेप्ट कर सकता है, जिन्हें मौजूदा क्लास में नए ऑब्जेक्ट क्रिएट करते समय पास किया जा सकता है। जिससे की प्रोग्रामर को किसी क्लास में नए ऑब्जेक्ट कंस्ट्रक्शन के समय उसके प्रॉपर्टीज़ को स्पेसिफिक वैल्यू के साथ इनिशियलाइज़ कर सकते हैं।
Example of the __construct() method in PHP programming.
<?php
class employee {
public $emp_name;
public $emp_id;
public $emp_dept;
// here we use Constructor method for employee class
public function __construct($emp_name, $emp_id, $emp_dept) {
$this->emp_name = $emp_name;
$this->emp_id = $emp_id;
$this->emp_dept = $emp_dept;
}
public function employeeInfo() {
echo “Employee Name – $this->emp_name, \n Employee Id – $this->emp_id , \n Employee Department – $this->emp_dept \n”;
}
}
// here we Create an object of the employee class
$employee1 = new employee(“Siddhi Deora”, “S101” , “Marketing”);
$employee1->employeeInfo(); // Result – Employee Name – Siddhi Deora, Employee Id – S101 ,Employee Department – Marketing
?>
__construct() method in PHP Explanation.
- इस प्रोग्राम में __construct() क्लास मेथड को $employeer1 क्लास इंस्टैंस क्रिएट करते समय कॉल किया जाता है।
- इसमें “Siddhi Deora”, “S101” , और “Marketing” क्लास पैरामीटर कंस्ट्रक्टर पास किए जाते हैं, जो employee क्लास ऑब्जेक्ट के पॉपर्टीज़ $emp_name, $emp_id और $emp_dept को इनिशियलाइज़ करता है।
__destruct() – Destructor in PHP Programming.
What is a destructor in PHP Programming?
पीएचपी क्लास प्रोग्राम में __destruct() क्लास मेथड पीएचपी में एक और स्पेशल और यूनिक क्लास ऑब्जेक्ट डिस्ट्रक्शन मेथड है, जो यूजर डिफाइन किसी क्लास ऑब्जेक्ट के डिस्ट्रक्ट होने उस ऑब्जेक्ट दायरे से बाहर होने पर ऑटोमेटिकली आर्डर में कॉल हो जाती है। __destruct() क्लास मेथड का यूज़ किसी भी क्लास प्रोग्राम क्लीनअप टास्क को करने के रूप में किया जाता है. जैसे, डेटाबेस कनेक्शन को स्टॉप करना, क्लास ऑब्जेक्ट रिसोर्सेज को रिलीज़ करना, या क्लास में ऑब्जेक्ट को स्टोरेज मेमोरी से रिमूव करने से पहले फाइनल ऑपरेशन को अप्लाई करना आदि है।
Syntax of __destruct() in PHP Programming.
Public function __destruct()
यहाँ क्लास प्रोग्राम में डिस्ट्रक्टर फंक्शन कोई पैरामीटर एक्सेप्ट नहीं करता है।
याद रहे किसी क्लास प्रोग्राम में __destruct() मेथड किसी ऑब्जेक्ट के डिस्ट्रक्ट होने या स्क्रिप्ट के टर्मिनेट होने कुछ पर्टिकुलर कंडीशन में जहाँ क्लास ऑब्जेक्ट अभी भी दायरे में है, या होने पर ये ऑटोमेटिकली रूप से इनवोक हो जाती है।
Example of __destruct() in PHP Programming.
<?php
class employee {
public $emp_name;
public $emp_id;
public $emp_dept;
// here we use employee class Constructor method
public function __construct($emp_name, $emp_id, $emp_dept) {
$this->emp_name = $emp_name;
$this->emp_id = $emp_id;
$this->emp_dept = $emp_dept;
echo “Employee object created \n Employee Name – $this->emp_name, \n Employee Id – $this->emp_id , \n Employee Department – $this->emp_dept \n \n”;
}
// here employee class Destructor method use
public function __destruct() {
echo “Employee object destroyed – $this->emp_name $this->emp_id $this->emp_dept \n”;
}
}
// here we Create an object of the employee class
$employee1 = new employee(“Siddhi Deora”, “S101” , “Marketing”);
echo “employee Object is still in use \n”;
// here this code use to Destroy the object explicitly (optional)
unset($employee1); // here The destructor method will be called when the object is destroyed
echo “Terminate the process.\n”;
?>
Explanation of the __destruct() class method.
- इस प्रोग्राम में __construct() क्लास मेथड को $employee1 ऑब्जेक्ट के कंस्ट्रशन करने पर कॉल किया जाता है, और यह कंसोल स्क्रीन में एक मैसेज को प्रिंट करता है।
- यहाँ __destruct() क्लास मेथड को प्रोग्राम में तब कॉल किया जाता है, जब क्लास ऑब्जेक्ट को unset() फंक्शन का यूज़ करके डिस्ट्रक्ट किया जाता है। यदि इस प्रोग्राम में क्रिएटेड क्लास ऑब्जेक्ट को क्लियर फॉर्मेट में नष्ट नहीं किया जाता है, तो प्रोसेस टर्मिनेट होने पर और क्लास ऑब्जेक्ट के दायरे से बाहर होने पर पीएचपी प्रोग्राम ऑटोमेटिकली आर्डर में डिस्ट्रक्टर को कॉल करेगा।
Key points about __construct() and __destruct() in PHP programming.
__construct() class method.
- जब यूजर डिफाइन क्लास में कोई नया क्लास ऑब्जेक्ट क्रिएट किया जाता है, तो ये ऑटोमेटिकली आर्डर में अप्लाई होता है।
- क्लास में __construct() मेथड का यूज़ क्लास ऑब्जेक्ट के प्रॉपर्टीज को स्टार्ट करने या सेटअप टास्क को कम्पलीट करने में किया जाता है।
- __construct() मेथड स्पेसिफिक वैल्यूज के साथ क्लास ऑब्जेक्ट को स्टार्ट करने के लिए पैरामीटर वैल्यू को एक्सेप्ट कर सकता है।
__destruct() class method.
- जब यूजर डिफाइन क्लास में कोई ऑब्जेक्ट नष्ट हो जाता है, या मौजूदा क्लास के दायरे से बाहर हो जाता है, तो __destruct() मेथड ऑटोमेटिकली आर्डर में अप्लाई होता है।
- पीएचपी क्लास प्रोग्राम में __destruct() फंक्शन मेथड का यूज़ सिस्टम क्लीनअप टास्क में किया जाता है, जैसे, डेटाबेस कनेक्शन स्टॉप करना, प्रोग्राम रिसोर्सेज को रिलीज़ करना, या अंतिम प्रोग्राम ऑपरेशन करना आदि है।
- जब प्रोग्राम में कोई स्क्रिप्ट टर्मिनेट हो जाती है, और क्लास ऑब्जेक्ट के कोई और रेफ़्रेन्स मौजूद नहीं होते हैं, तो पीएचपी ऑटोमेटिकली आर्डर में डिस्ट्रक्टर मेथड को कॉल करेगा।
Order of execution of the __construct() and __destruct() functions.
- क्लास प्रोग्राम में __construct() मेथड को सबसे पहले, किसी क्लास ऑब्जेक्ट के इंस्टैंशिएट क्रिएट या डिफाइन होने के ठीक बाद, कॉल किया जाता है।
- क्लास प्रोग्राम में __destruct() मेथड को प्रोग्राम के सबसे अंत में, उस समय कॉल किया जाता है, जब मौजूदा क्लास प्रोग्राम में ऑब्जेक्ट नष्ट हो जाता है, या क्लास प्रोग्राम स्क्रिप्ट टर्मिनेट हो जाती है।
Memory Management in PHP Class Programs.
पीएचपी प्रोग्रामिंग मेमोरी मैनेजमेंट के लिए गार्बेज कलेक्शन मेथड को यूज़ करता है। जब क्लास प्रोग्राम में किसी ऑब्जेक्ट के कोई और रेफ़्रेन्स नहीं होते हैं, तो उसे प्रोग्राम में अंततः नष्ट कर दिया जाता है, इस कारण प्रोग्राम के अंत में __destruct() क्लास मेथड एक्टिवेट हो जाएगी।
Example of how both a constructor and a destructor work in PHP.
<?php
class developer {
public $developer_name;
public $dev_id;
public $email;
// here we use Constructor method for developer class
public function __construct($developer_name, $dev_id, $email) {
$this->developer_name = $developer_name;
$this->email = $email;
$this->dev_id = $dev_id;
echo “developer object construct – $this->developer_name $this->dev_id [$this->email] \n \n”;
}
// here we use Destructor method for class
public function __destruct() {
echo “developer object destruct – $this->developer_name $this->dev_id [$this->email] \n”;
}
}
// here we Create developer class object
$developer1 = new developer(“Harry Deora”, “H101”, “harry@domain.com” );
echo “developer class object still in use.\n \n”;
// here The object is destroyed when the script ends or unset is called in program
unset($developer1); // here the Destructor will be called explicitly here
echo “Terminate of process\n”;
?>
Explanation of the constructor and a destructor work method.
- इस प्रोग्राम में जब $developer1 को क्रिएट किया जाता है, तो यहाँ कंस्ट्रक्टर को इनवोक किया जाता है, और यह कस्ट्रक्ट मैसेज को प्रिंट करता है।
- जब यहाँ unset($developer1) को प्रोग्राम में कॉल किया जाता है, तो डिस्ट्रक्टर मेथड को इनवोक किया जाता है, और डिस्ट्रक्ट मैसेज को प्रिंट करता है।
- यदि यहाँ प्रोग्रामर unset() फंक्शन को यूज़ नहीं करते हैं, तो प्रोग्राम प्रोसेस के एक्सेक्यूशन टर्मिनेट होने और ऑब्जेक्ट के स्कोप से बाहर जाने पर भी डिस्ट्रक्टर को कॉल किया जाएगा।
Destructor method without unset() in PHP programming.
यदि प्रोग्रामर क्लास प्रोग्राम में क्लियर आर्डर unset() फंक्शन को कॉल नहीं करते हैं, तो प्रोग्राम स्क्रिप्ट या फ़ंक्शन के अंत में ऑब्जेक्ट के स्कोप से बाहर जाने पर पीएचपी ऑटोमेटिकली आर्डर में उसे नष्ट कर देगा।
Destructor method without unset() in PHP example.
<?php
class Filecontroller {
public $name_of_file;
// here we use filecontroller Constructor method
public function __construct($name_of_file) {
$this->name_of_file = $name_of_file;
echo “Open the file – $this->name_of_file \n”;
}
// here we use filecontroller Destructor method
public function __destruct() {
echo “Close the file – $this->name_of_file \n”;
}
}
// Create Filecontroller object
$file = new Filecontroller(“file.txt”);
echo “Work with file \n”;
// here filecontroller class Object goes out of scope here, so now destructor will be call automatically
?>
यहाँ इस प्रोग्राम एक्साम्प्ल में, स्क्रिप्ट के अंत में क्लास ऑब्जेक्ट स्कोप से बाहर चला जाता है, और फ़ाइल को बंद करने प्रोसेस को फॉलो करने के लिए डिस्ट्रक्टर अपने आप कॉल हो जाता है।
A summary of the __construct() and __destruct() method functions in PHP programming.
- पीएचपी प्रोग्राम में __construct() फंक्शन मेथड का यूज़ किसी क्लास ऑब्जेक्ट के क्रिएट होने पर उसे इनिशियलाइज़ करने में किया जाता है, और यह क्लास पैरामीटर को एक्सेप्ट कर सकता है।
- पीएचपी प्रोग्राम में __destruct() फंक्शन मेथड तब अपने आप कॉल हो जाता है, जब कोई क्लास ऑब्जेक्ट नष्ट हो जाता है, या प्रोग्राम स्कोप से बाहर चला जाता है, और यह क्लीनअप टास्क के लिए यूज़फुल है।
- पीएचपीप्रोग्राम में __construct() और __destruct() दोनों मेथड प्रोग्राम रिसोर्सेज मैनेजमेंट में जरूरी हैं, जिससे प्रोग्रामर क्लास प्रोग्राम ऑब्जेक्ट जरूरत के रिसोर्सेज को ठीक से इनिशियलाइज़ और क्लीन कर सकते हैं।

