Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> PHP

PHP ऑब्जेक्ट्स और संदर्भ

परिचय

PHP में, वस्तुओं को डिफ़ॉल्ट रूप से संदर्भों द्वारा पारित किया जाता है। यहां, संदर्भ एक उपनाम है, जो दो अलग-अलग चर को एक ही मान पर लिखने की अनुमति देता है। ऑब्जेक्ट वैरिएबल में ऑब्जेक्ट ही मान के रूप में नहीं होता है। इसमें केवल एक वस्तु पहचानकर्ता होता है जो वास्तविक वस्तु का उपयोग करने की अनुमति देता है। जब कोई ऑब्जेक्ट तर्क द्वारा भेजा जाता है, लौटाया जाता है या असाइन किया जाता है, तो विभिन्न चर उपनाम नहीं होते हैं - इसके बजाय, वे एक ही ऑब्जेक्ट की ओर इशारा करते हुए पहचानकर्ता की एक प्रति रखते हैं।

उदाहरण

PHP में spl_object_hash() . है फ़ंक्शन जो किसी ऑब्जेक्ट की अद्वितीय हैश आईडी देता है। निम्नलिखित कोड में, दो ऑब्जेक्ट वेरिएबल, एक ही ऑब्जेक्ट को संदर्भित करते हुए एक ही आईडी लौटाते हैं

उदाहरण

<?php
class test1{
   public $name;
}
$obj1=new test1();
echo "ID of obj1: " . spl_object_hash($obj1) . "\n";
$obj2=$obj1;
echo "ID of obj2: " . spl_object_hash($obj2);
?>

आउटपुट

परिणाम दिखाता है कि दोनों चरों की आईडी समान है

ID of obj1: 000000004355dda6000000006f04b1a7
ID of obj2: 000000004355dda6000000006f04b1a7

जब हम किसी ऑब्जेक्ट वेरिएबल का रेफरेंस बनाते हैं, तो नाम से पहले और प्रीफिक्स करके, प्रॉपर्टीज में कोई भी बदलाव रेफरेंस वेरिएबल में अपने आप दिखाई देता है

उदाहरण

<?php
class test1{
   public $name;
}
$obj1=new test1();
echo "ID of obj1: " . spl_object_hash($obj1) . "\n";
$obj2=&$obj1;
echo "ID of obj2: " . spl_object_hash($obj2) . "\n";
$obj1->name="Amar";
echo "name: " .$obj2->name;
?>

आउटपुट

उपरोक्त कोड अब आउटपुट के बाद नाम देता है

ID of obj1: 00000000163cf0b8000000003ad0ed93
ID of obj2: 00000000163cf0b8000000003ad0ed93
name: Amar

  1. PHP में date_modify () फ़ंक्शन

    date_modify() फ़ंक्शन टाइमस्टैम्प को बदल देता है। यह सफलता पर NULL या विफलता पर FALSE लौटाता है। सिंटैक्स date_modify(object, modify) पैरामीटर ऑब्जेक्ट - डेटटाइम ऑब्जेक्ट date_create() द्वारा लौटाया गया। संशोधित करें - दिनांक/समय स्ट्रिंग निर्दिष्ट करता है। वापसी date_modify() फ़ंक्शन सफलता

  1. PHP में method_exists () फ़ंक्शन

    मेथड_एक्सिस्ट्स () फंक्शन जांचता है कि क्लास मेथड मौजूद है या नहीं। सिंटैक्स method_exists(object, name_of_method) पैरामीटर ऑब्जेक्ट -ऑब्जेक्ट इंस्टेंस या क्लास का नाम name_of_method -विधि का नाम वापसी मेथड_एक्सिस्ट्स () फंक्शन TRUE लौटाता है यदि मेथड_नाम द्वारा दी गई मेथड को दिए गए ऑब्जे

  1. PHP में get_object_vars () फ़ंक्शन

    get_object_var() फ़ंक्शन दिए गए ऑब्जेक्ट के गुण प्राप्त करता है। यह निर्दिष्ट वस्तु के लिए परिभाषित वस्तु गुणों की एक सहयोगी सरणी देता है। सिंटैक्स get_object_vars(object) पैरामीटर ऑब्जेक्ट - एक वस्तु उदाहरण। वापसी get_object_var() फ़ंक्शन निर्दिष्ट ऑब्जेक्ट के लिए परिभाषित ऑब्जेक्ट गुणों की ए