इस लेख में, हम PHP में गेटर और सेटर रणनीतियां बनाने का सबसे अच्छा तरीका सीखते हैं। गेटर और सेटर रणनीतियों का उपयोग तब किया जाता है जब हमें एंड-यूजर्स द्वारा वेरिएबल्स तक सीधी पहुंच को प्रतिबंधित करने की आवश्यकता होती है। गेटर्स और सेटर्स वे मेथड्स हैं जिनका उपयोग वेरिएबल्स के मानों को परिभाषित या पुनः प्राप्त करने के लिए किया जाता है, आमतौर पर प्राइवेट वाले।
जैसा कि नाम से पता चलता है, एक गेटर मेथड एक तकनीक है जो किसी ऑब्जेक्ट का मान प्राप्त या पुनर्प्राप्त करता है। साथ ही, एक सेटर मेथड एक तकनीक है जो किसी ऑब्जेक्ट का मान सेट करता है।
उदाहरण
आइए एक उदाहरण के माध्यम से गेटर और सेटर मेथड्स के उपयोग को समझें।
<?php
class Person{
private $name;
public function setName($name){
$this->name = $name;
}
public function getName(){
return $this->name;
}
}
$person = new Person();
echo $person->name;
?>
आउटपुट:
PHP Error Cannot access private property Person::$name
व्याख्या:
ऊपर हमारे Person क्लास में, $name नामक एक प्राइवेट प्रॉपर्टी है। क्योंकि यह प्राइवेट प्रॉपर्टी है, हम ऊपर की तरह सीधे उन्हें एक्सेस करने में असमर्थ हैं और यह एक फेटल एरर उत्पन्न करेगा।
उदाहरण
उपरोक्त कोड को चलाने और अपना वांछित आउटपुट प्राप्त करने के लिए आइए इस उदाहरण का परीक्षण करें।
<?php
class Person{
private $name;
public function setName($name){
$this->name = $name;
}
public function getName(){
return 'welcome'. $this->name;
}
}
$person = new Person();
$person->setName('Alex');
$name = $person->getName();
echo $name;
?>
आउटपुट:
welcomeAlex
व्याख्या:
यहां हमारी प्राइवेट प्रॉपर्टीज तक पहुंच देने के लिए, हमने getData नामक एक "गेटर" फंक्शन बनाया, फिर से क्योंकि प्रॉपर्टीज की विजिबिलिटी प्राइवेट पर सेट है, आप उनके मानों को बदलने या मॉडिफाई करने में भी असमर्थ होंगे। इसलिए, आपको हमारे द्वारा बनाए गए "सेटर" फंक्शन्स में से एक का उपयोग करना चाहिए: setName। उसके बाद, हमने अपने Person ऑब्जेक्ट को इंस्टेंटिएट किया।
हमने अपने सेटर तकनीक setData का उपयोग करके $name प्रॉपर्टी को "Alex" पर "सेट" किया। फिर हमने अपने गेटर फंक्शन getData का उपयोग करके $name प्रॉपर्टी के मान को पुनः प्राप्त किया।