नेमस्पेस टकराव नामकरण जब पुस्तकालयों से वर्गों और कार्यों का आयात की समस्या का समाधान।
नामस्थानों के बिना, यदि आप दो पुस्तकालयों को शामिल करते हैं जो एक ही नाम के साथ फ़ंक्शन/कक्षा को परिभाषित करते हैं (यानी, दो पुस्तकालय जिनमें दोनों 'उपयोगकर्ता' नामक कक्षा शामिल होती है), यह असफल हो जाएगी।
PHP में कोई नेमस्पेस समर्थन नहीं होने के कारण, अधिकांश पुस्तकालयों ने नाम टकराव से बचने के प्रयास में अद्वितीय होने की संभावना के साथ अपने कार्य/वर्ग नामों को उपसर्ग करने के लिए लिया है। समस्या यह है कि यह लंबे कार्य या कक्षा के नाम बनाता है।
उदाहरण here दिया अपवाद वर्ग के है:
PEAR_Form_Loader_Validate_Table_Element_Validator_Exception.
आप एक उपनाम 'के रूप में' कीवर्ड का उपयोग कर के रूप में अपने स्थानीय गुंजाइश में एक लंबे नाम स्थान से आयात कर सकते हैं - एक नाम आप चुनते हैं। इस प्रकार, आपके पास अभी भी आपके स्थानीय दायरे में आपकी पसंद का शॉर्ट क्लास नाम हो सकता है।
निम्नलिखित ज़ेड :: डीबी :: कनेक्शन के लिए डीबीकनेक्शन नामक 'उपनाम' लागू होता है।
use Zend::DB::Connection as DbConnection
बहुत अच्छी तरह से सचित्र। +1 –
सहमत हुए। बहुत अच्छा किया। मैं चाहता हूं कि वे नामस्थान और कक्षा के बीच एक अलग डिलीमीटर के साथ गए। :( –
पूरे डेलीमीटर ग्रिपिंग के साथ: यह पूरी तरह ठीक काम करेगा यदि आप केवल एक उद्धृत तारों का उपयोग करते हैं जो मैं php में प्रत्येक स्ट्रिंग के लिए करता हूं, न्यूलाइन –