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

PHP namespace कीवर्ड और __NAMESPACE__ कॉन्स्टेंट


परिचय

PHP में, namespace कीवर्ड का उपयोग नेमस्पेस को परिभाषित करने के लिए किया जाता है। इसका उपयोग वर्तमान नेमस्पेस में किसी विशेष एलिमेंट तक पहुंच का अनुरोध करने के लिए एक ऑपरेटर के रूप में भी किया जाता है। __NAMESPACE__ कॉन्स्टेंट वर्तमान नेमस्पेस का नाम लौटाता है।

__NAMESPACE__ कॉन्स्टेंट

नामित नेमस्पेस से, __NAMESPACE__ इसका नाम लौटाता है, ग्लोबल और अनाम नेमस्पेस के लिए यह खाली स्ट्रिंग लौटाता है।

उदाहरण 1: ग्लोबल नेमस्पेस

# test1.php
<?php
echo "name of global namespace: " . __NAMESPACE__ . "\n";
?>

आउटपुट

name of global namespace: 

उदाहरण 2: नामित नेमस्पेस

<?php
namespace myspace;
echo "name of current namespace: " . __NAMESPACE__ . "\n";
?>

आउटपुट

name of current namespace: myspace

डायनामिक नाम निर्माण

__NAMESPACE__ डायनामिक रूप से नाम बनाने के लिए उपयोगी है:

<?php
namespace MyProject;
class myclass {
    function hello() { echo "hello world"; }
}
$cls = "myclass";
function get($cls) {
    $a = __NAMESPACE__ . '\\' . $cls;
    return new $a;
}
get($cls)->hello();
?>

आउटपुट

hello world

namespace ऑपरेटर

namespace कीवर्ड का उपयोग क्लासेज के लिए self ऑपरेटर के समकक्ष के रूप में किया जा सकता है, ताकि वर्तमान नेमस्पेस या सब-नेमस्पेस से किसी एलिमेंट को स्पष्ट रूप से अनुरोध किया जा सके।

उदाहरण 1: नेमस्पेस के अंदर

<?php
namespace Myspace;
class myclass {
    function hello() { echo "hello Myspace"; }
}
$a = new namespace\myclass();
$a->hello();
?>

आउटपुट

hello Myspace

उदाहरण 2: ग्लोबल नेमस्पेस से

<?php
class myclass {
    function hello() { echo "hello global space"; }
}
$a = new namespace\myclass();
$a->hello();
?>

आउटपुट

hello global space

मुख्य उपयोग

  • __NAMESPACE__ - वर्तमान नेमस्पेस नाम प्राप्त करने के लिए (स्ट्रिंग के रूप में)।
  • namespace\ClassName - वर्तमान नेमस्पेस में क्लास को स्पष्ट रूप से संदर्भित करने के लिए।
  • namespace\sub\ClassName - सब-नेमस्पेस में क्लास संदर्भित करने के लिए।
  • namespace\functionName() - वर्तमान नेमस्पेस में फंक्शन कॉल करने के लिए।
  • namespace\CONSTANT - वर्तमान नेमस्पेस में कॉन्स्टेंट एक्सेस करने के लिए।
  1. - PHP में FILTER_SANITIZE_NUMBER_INT कॉन्स्टेंट

    विवरण FILTER_SANITIZE_NUMBER_INT कॉन्स्टेंट नंबर से सभी अवैध कैरेक्टर्स डिलीट करता है। रिटर्न वैल्यू FILTER_SANITIZE_NUMBER_INT कॉन्स्टेंट कुछ भी रिटर्न नहीं करता। उदाहरण <?php $var = 4-5+9p; var_dump(filter_var($var, FILTER_SANITIZE_NUMBER_INT)); ?> आउटपुट निम्न आउटपुट है: string(5) 4-5+9

  1. - PHP में FILTER_SANITIZE_NUMBER_FLOAT कॉन्स्टेंट

    विवरण FILTER_SANITIZE_NUMBER_FLOAT कॉन्स्टेंट फ्लोट नंबर से सभी अवैध कैरेक्टर्स डिलीट करता है। फ्लैग्स FILTER_FLAG_ALLOW_FRACTION − फ्रैक्शन सेपरेटर की अनुमति देता है FILTER_FLAG_ALLOW_THOUSAND − थाउजेंड सेपरेटर की अनुमति देता है FILTER_FLAG_ALLOW_SCIENTIFIC − साइंटिफिक नोटेशन की अनुमति देता है

  1. - PHP में FILTER_VALIDATE_FLOAT कॉन्स्टेंट

    विवरण FILTER_VALIDATE_FLOAT कॉन्स्टेंट वैल्यू को फ्लोट नंबर के रूप में वैलिडेट करता है। रिटर्न वैल्यू FILTER_VALIDATE_FLOAT कॉन्स्टेंट कुछ भी रिटर्न नहीं करता। उदाहरण <?php $var = 291.9; var_dump(filter_var($var, FILTER_VALIDATE_FLOAT)); ?> आउटपुट निम्न आउटपुट है: float(291.9)