परिभाषा और उपयोग
PHP में, ऑब्जेक्ट एक मिश्रित डेटा प्रकार (सरणी के साथ) है। एक से अधिक प्रकार के मानों को एक ही चर में एक साथ संग्रहित किया जा सकता है। ऑब्जेक्ट एक अंतर्निहित या उपयोगकर्ता परिभाषित वर्ग का एक उदाहरण है। गुणों के अलावा, वर्ग डेटा से जुड़ी कार्यक्षमता को परिभाषित करता है।
प्राथमिक (स्केलर) चर, सरणियों और अन्य वस्तुओं को कास्टिंग ऑपरेटर का उपयोग करके डेटा प्रकार को ऑब्जेक्ट करने के लिए डाला जा सकता है। PHP stdClass provides प्रदान करता है एक सामान्य खाली वर्ग के रूप में जो गतिशील रूप से गुण जोड़ने और कास्टिंग के लिए उपयोगी है।
सिंटैक्स
किसी वर्ग की वस्तु घोषित करने के लिए हमें नए कथन का उपयोग करने की आवश्यकता है
class myclass { .. .. } $obj=new myclass;
उदाहरण
<?php class SayHello{ function hello(){ echo "Hello World"; } } $obj=new SayHello; $obj->hello(); ?>
आउटपुट
यह निम्नलिखित परिणाम देगा -
Hello World
शुरू करने के लिए StdClass का ऑब्जेक्ट शून्य है। हम गतिशील रूप से गुण जोड़ सकते हैं
उदाहरण
<?php $obj=new stdClass; $obj->name="Deepak"; $obj->age=21; $obj->marks=75; print_r($obj); ?>
आउटपुट
यह निम्नलिखित परिणाम देगा -
stdClass Object( [name] => Deepak [age] => 21 [marks] => 75 )
ऐरे को ऑब्जेक्ट के लिए टाइपकास्ट किया जा सकता है जैसे
उदाहरण
<?php $arr=array("name"=>"Deepak", "age"=>21, "marks"=>75); $obj=(object)$arr; print_r($obj); ?>
आउटपुट
यह निम्नलिखित परिणाम देगा -
stdClass Object( [name] => Deepak [age] => 21 [marks] => 75 )
इसके विपरीत, किसी वस्तु को सरणी में डाला जा सकता है
उदाहरण
<?php $obj=new stdClass; $obj->name="Deepak"; $obj->age=21; $obj->marks=75; $arr=(array)$obj; print_r($arr); ?>
आउटपुट
यह निम्नलिखित परिणाम देगा -
Array( [name] => Deepak [age] => 21 [marks] => 75 )
किसी भी अदिश प्रकार के वेरिएबल को टाइप कास्टिंग द्वारा किसी वस्तु में परिवर्तित किया जा सकता है। अदिश चर का मान वस्तु के स्केलर . का मान बन जाता है संपत्ति।
उदाहरण
<?php $name="Deepak"; $age=21; $percent=75.50; $obj1=(object)$name; print_r($obj1); $obj2=(object)$age; print_r($obj2); $obj3=(object)$percent; print_r($obj3); ?>
आउटपुट
यह निम्नलिखित परिणाम देगा -
stdClass Object( [scalar] => Deepak ) stdClass Object( [scalar] => 21 ) stdClass Object( [scalar] => 75.5 )