PHP में OOP नेमस्पेस का परिचय
यदि PHP स्क्रिप्ट चलाते समय एक ही नाम के दो वर्ग होंगे, तो वे संघर्ष में आ जाएंगे, जिससे एक घातक त्रुटि उत्पन्न होगी। यह वास्तव में बहुत सुविधाजनक नहीं है, क्योंकि लगातार नामों की विशिष्टता पर नज़र रखनी पड़ती है।
उदाहरण के लिए निम्नलिखित स्थिति पर विचार करें:
आपकी एक वेबसाइट है, जिस पर उपयोगकर्ता
और एडमिन हैं। इसके अलावा, फ़ोल्डर users में
उपयोगकर्ताओं के लिए क्लासेस संग्रहीत हैं, और फ़ोल्डर admin
में - एडमिन के लिए क्लासेस।
मान लीजिए कि उपयोगकर्ताओं और एडमिन दोनों को एक निश्चित
क्लास Page की आवश्यकता है, जो साइट के कुछ
पेजों के लिए जिम्मेदार है। इसके अलावा, उपयोगकर्ताओं के लिए
उनका अपना वर्ग होगा, और एडमिन के लिए - उनका अपना। ऐसे
मामले में हम नामों के टकराव का सामना करते हैं।
इस संघर्ष को हल करने का सबसे आसान तरीका
- कक्षाओं को अलग-अलग नाम देना है, उदाहरण के लिए,
UsersPage और AdminPage। हालाँकि, यह
रास्ता धीरे-धीरे बहुत लंबे कक्षा नामों के出现 की ओर ले जाता है।
PHP में इस समस्या को हल करने का एक और तरीका मौजूद है - नेमस्पेस। सार इस प्रकार है: प्रत्येक क्लास किसी नेमस्पेस से संबंधित हो सकता है और इसके साथ ही कक्षाओं के नामों की विशिष्टता केवल इस नेमस्पेस के भीतर बनाए रखी जानी चाहिए।
यानी, हमारी समस्या को हल करने के लिए हम
निम्नलिखित कर सकते हैं: एक क्लास Page
को किसी नेमस्पेस से संबंधित करें, उदाहरण के लिए,
Users, और दूसरे क्लास Page
को दूसरे नेमस्पेस से संबंधित करें, उदाहरण के लिए,
Admin।