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

PHP ग्लोबल स्पेस: नेमस्पेस के बिना कोड


परिचय

किसी भी नेमस्पेस परिभाषा की अनुपस्थिति में, क्लास, फंक्शन आदि की सभी परिभाषाएं एक ग्लोबल नेमस्पेस में रखी जाती हैं। यदि किसी नाम को \ से प्रीफिक्स किया जाता है, तो इसका मतलब है कि नाम की आवश्यकता ग्लोबल स्पेस से है, भले ही नेमस्पेस के संदर्भ में हो।

ग्लोबल स्पेस स्पेसिफिकेशन का उपयोग

उदाहरण: ग्लोबल फंक्शन कॉल करना

<?php
namespace test;
/* यह फंक्शन है test\fopen */
function fopen() {
    /* ... */
    $f = \fopen(...); // ग्लोबल fopen कॉल करें
    return $f;
}
?>

इंक्लूडेड फाइलें डिफ़ॉल्ट रूप से ग्लोबल नेमस्पेस में डिफ़ॉल्ट होती हैं।

उदाहरण: इंक्लूडेड फाइल का नेमस्पेस

test1.php

<?php
echo __NAMESPACE__ . "\n";
?>

यह खाली स्ट्रिंग प्रिंट करेगा।

test2.php (अन्य नेमस्पेस में शामिल)

<?php
namespace testspace {
    include 'test1.php';
    echo __NAMESPACE__ . "\n";
}
?>

आउटपुट

testspace

व्याख्या

  • test1.php का कोई नेमस्पेस नहीं है, इसलिए यह ग्लोबल नेमस्पेस में चलता है (__NAMESPACE__ खाली स्ट्रिंग लौटाता है)।
  • test2.php में namespace testspace है, इसलिए __NAMESPACE__ "testspace" लौटाता है।
  • इंक्लूड की गई फाइल अपने नेमस्पेस को नहीं बदलती - यह ग्लोबल रहती है जब तक कि उसके अंदर नेमस्पेस घोषित न हो।

ग्लोबल स्पेस में कोड लिखना

नेमस्पेस वाली फाइल में ग्लोबल कोड लिखने के लिए ब्रैकेटेड सिंटैक्स का उपयोग करें:

<?php
namespace MyProject {
    // नेमस्पेस कोड
}

namespace {
    // ग्लोबल कोड
    function globalFunction() { }
}
?>
  1. - क्या PHP में परिभाषित नेमस्पेस की सूची प्राप्त करना संभव है?

    दिए गए फ़ाइल 1 में नेमस्पेस ns_1 है और फ़ाइल 2 में नेमस्पेस ns_2 है, यदि फ़ाइल 1 और फ़ाइल 2 को फ़ाइल 3 में शामिल किया जाता है, तो यह जानने का कोई तरीका नहीं है कि नेमस्पेस ns_1 और ns_2 लोड किए गए हैं। एकमात्र तरीका class_exists फ़ंक्शन का उपयोग करना है और विशिष्ट नेमस्पेस के साथ वर्गों की सूची get_

  1. - PHP में ग्लोबल वेरिएबल कैसे घोषित करें

    PHP में ग्लोबल वेरिएबल एक **ग्लोबल वेरिएबल** प्रोग्राम के किसी भी भाग में एक्सेस की जा सकती है। हालांकि, इसे **संशोधित** करने के लिए, उस फ़ंक्शन में स्पष्ट रूप से global कीवर्ड का उपयोग करके ग्लोबल घोषित किया जाना चाहिए जिसमें इसे संशोधित किया जाना है। उदाहरण 1: बेसिक ग्लोबल वेरिएबल <?php $val

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

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