Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> PHP

PHP नेमस्पेस का उपयोग: क्वालिफाइड नाम और रिज़ॉल्यूशन


परिचय

नेमस्पेस में क्लास, फंक्शन या कॉन्स्टेंट को निम्न तरीकों से उपयोग किया जा सकता है:

  • वर्तमान नेमस्पेस में क्लास का उपयोग
  • वर्तमान नेमस्पेस के सापेक्ष नेमस्पेस निर्दिष्ट करना
  • नेमस्पेस का पूरी तरह से क्वालिफाइड नाम देना

1. वर्तमान नेमस्पेस से

इस उदाहरण में test1.php से एक नेमस्पेस लोड किया गया है। नेमस्पेस के बिना संदर्भित फंक्शन या क्लास नाम वर्तमान नेमस्पेस के होते हैं।

test1.php

<?php
namespace myspace\space1;
const MAX = 100;
function hello() { echo "hello in space1\n"; }
class myclass {
    static function hellomethod() { echo "hello in space1\n"; }
}
?>

उपयोग करने वाला कोड

<?php
namespace myspace;
include 'test1.php';
const MAX = 200;
function hello() { echo "hello in myspace\n"; }
class myclass {
    static function hellomethod() { echo "hello in myspace\n"; }
}
hello();
myclass::hellomethod();
echo MAX;
?>

आउटपुट

hello in myspace
hello in myspace
200

2. सापेक्ष नेमस्पेस का उपयोग

निम्न उदाहरण में फंक्शन और क्लास को सापेक्ष नेमस्पेस के साथ एक्सेस किया गया है:

<?php
namespace myspace;
include 'test1.php';
const MAX = 200;
function hello() { echo "hello in myspace\n"; }
class myclass {
    static function hellomethod() { echo "hello in myspace\n"; }
}
space1\hello();
space1\myclass::hellomethod();
echo space1\MAX;
?>

आउटपुट

hello in space1
hello in space1
100

3. पूरी तरह से क्वालिफाइड नेमस्पेस

फंक्शन्स और क्लासेज को निरपेक्ष नेमस्पेस नाम दिया गया है:

<?php
namespace myspace;
include 'test1.php';
const MAX = 200;
function hello() { echo "hello in myspace\n"; }
class myclass {
    static function hellomethod() { echo "hello in myspace\n"; }
}
\myspace\hello();
\myspace\space1\hello();
\myspace\myclass::hellomethod();
\myspace\space1\myclass::hellomethod();
echo \myspace\MAX . "\n";
echo \myspace\space1\MAX;
?>

आउटपुट

hello in myspace
hello in space1
hello in myspace
hello in space1
200
100

मुख्य बिंदु

  • अनक्वालिफाइड नाम (कोई बैकस्लैश नहीं): वर्तमान नेमस्पेस में रिज़ॉल्व होता है।
  • क्वालिफाइड नाम (बैकस्लैश के साथ लेकिन शुरुआत में नहीं): वर्तमान नेमस्पेस के सापेक्ष रिज़ॉल्व होता है।
  • फुली क्वालिफाइड नाम (शुरुआत में बैकस्लैश): ग्लोबल नेमस्पेस से निरपेक्ष रिज़ॉल्व होता है।
  • use कीवर्ड से इम्पोर्ट/एलियासिंग के बाद छोटे नाम उपयोग किए जा सकते हैं।
  1. - PHP का उपयोग करके रैंडम स्ट्रिंग जनरेट करना

    PHP में रैंडम स्ट्रिंग जनरेट करना विधि 1: md5() + mt_rand() + substr() (पुराना तरीका) <?php $res = substr(md5(mt_rand()), 0, 5); echo रैंडम स्ट्रिंग प्रदर्शित हो रही है...\n; echo $res; ?> आउटपुट रैंडम स्ट्रिंग प्रदर्शित हो रही है... 1c856 विधि 2: random_bytes() + bin2hex() (क्रिप्टोग्र

  1. - PHP में नेमस्पेस कीवर्ड क्या है?

    इस लेख में, हम PHP में नेमस्पेस के बारे में जानने जा रहे हैं। PHP में जब हम बड़े एप्लिकेशन बना रहे होते हैं या थर्ड-पार्टी एप्लिकेशन/लाइब्रेरी को इंटीग्रेट कर रहे होते हैं तो क्लास नामों, फंक्शन नामों के बीच टकराव की संभावना हो सकती है। इसलिए इन समस्याओं से बचने के लिए PHP नेमस्पेस संबंधित क्लासेज,

  1. - C# में नेस्टेड नेमस्पेस (Nested Namespaces)

    परिचय नेमस्पेस के अंदर नेमस्पेस घोषित करना नेस्टेड नेमस्पेस कहलाता है। कोड को तार्किक रूप से व्यवस्थित करने के लिए उपयोगी। सिंटैक्स Console.WriteLine(Inner Namespace); } } } उपयोग using System; namespace Outer { class Program { static void Main(string[] args)