->
किसी वस्तु के सदस्य का जिक्र करते समय प्रयोग किया जाता है।
::
स्कोप रिजॉल्यूशन ऑपरेटर
है और इसका उपयोग कक्षा के एक स्थिर सदस्य को संदर्भित करने के लिए किया जाता है।
निम्नलिखित वर्ग पर विचार करें:
class FooBar {
public static function fizz() {
echo "Fizz";
}
public function buzz() {
echo "Buzz";
}
}
आप फ़ंक्शन को कॉल करेंगे buzz()
->
. का उपयोग करके :
$myFooBar = new FooBar();
$myFooBar->buzz();
लेकिन उपयोग करेंगे ::
functon को कॉल करने के लिए fizz()
, क्योंकि यह एक स्थिर सदस्य है (एक सदस्य जिसे कक्षा के उदाहरण की आवश्यकता नहीं होती है):
FooBar::fizz();
साथ ही, जब हम स्थिर . के बीच अंतर के बारे में बात कर रहे हैं सदस्य बनाम तत्काल सदस्यों, आप $this
. का उपयोग नहीं कर सकते स्थिर . के भीतर वर्तमान उदाहरण को संदर्भित करने के लिए सदस्य। आप self
का उपयोग करते हैं
इसके बजाय (कोई अग्रणी $
. नहीं ) जो वर्तमान वर्ग को संदर्भित करता है, या parent
कोड>
यदि आप मूल वर्ग को संदर्भित करना चाहते हैं, या यदि आपको PHP 5.3.0 के साथ काम करने का आनंद है, static
(जो देर से स्थिर बंधन की अनुमति देता है)।
दस्तावेज़ीकरण ::
. का उपयोग करता है किसी वर्ग के अंदर किसी फ़ंक्शन को संदर्भित करने के लिए क्योंकि शीर्षलेख में वर्ग का नाम कक्षा का उदाहरण नहीं है। अभी भी उसी उदाहरण का उपयोग करते हुए, एक दस्तावेज़ प्रविष्टि जो फ़ंक्शन buzz()
. को संदर्भित करती है निम्नलिखित शीर्षलेख का उपयोग करेगा:
FooBar::buzz
लेकिन जब तक प्रलेखन निर्दिष्ट नहीं करता है कि यह एक स्थिर सदस्य है, आपको ->
. का उपयोग करने की आवश्यकता होगी एक उदाहरण पर इसे कॉल करने के लिए:
$myFooBar = new FooBar();
$myFooBar->buzz();