में दो बार कॉल करता रहता है मैंने एक ऑटोलोडर क्लास बनाया है जो इरादे से काम करता है, लेकिन मैंने एक अजीब व्यवहार देखा है। जब मैं spl_autoload_register()
फ़ंक्शन को संभालने वाली विधि को पारित कक्षाओं के परिणामों को प्रतिबिंबित करता हूं। मैं देख रहा हूं कि मेरे पास युगल है। जैसे कि स्क्रिप्ट को दो बार बुलाया जाता है, और क्योंकि यह एक सिंगलटन डेटा मेरे मामले में 2 सरणी बनाता है।php सिंगलटन खुद को ऑटोलोडर वर्ग
मैं इस पद्धति का उपयोग कर रहा हूँ मेरी सिंगलटन
public static function init()
{
if (!isset(self::$instance))
self::$instance = new self();
return self::$instance;
}
बनाने के लिए मैं तो निर्माता निजी के लिए सेट है। मैं यह देखने की कोशिश कर रहा हूं कि यह एक क्लोन बनाने के लिए कहां दिखाई देता है, प्रत्येक विधि डीबगिंग के माध्यम से चला गया है।
मुझे संदेह है कि उस वर्ग के लिए मेरी कक्षाएं और कक्षा को spl_autoload_register() फ़ंक्शन में कहीं भी क्लोन किया जा रहा है।
किसी भी मदद की सराहना की जाएगी।
आप __clone समारोह अनुसार सेट है? – busypeoples
क्या आप पूर्ण कक्षा कोड पोस्ट कर सकते हैं? – busypeoples
ठीक है, पोस्ट किया गया। अगर मैं इसे गैर सिंगलटन उदाहरण के रूप में चलाता हूं तो यह स्वयं क्लोन नहीं होगा। – Eli