站長資訊網(wǎng)
        最全最豐富的資訊網(wǎng)站

        小編帶你使用命名空間(php版)

        上一篇文章中我們了解了子命名空間,知道了如何去定義子命名空間,有需要的請看《php命名空間之子命名空間是什么?》。這次我們向大家介紹命名空間的使用方法,有需要的可以參考參考。

        首先我們來看一個例子。

        file1.php 文件代碼

        <?php namespace FooBarsubnamespace;   const FOO = 1; function foo() {} class foo {     static function staticmethod() {} } ?>

        file2.php 文件代碼

        <?php namespace FooBar; include 'file1.php';  const FOO = 2; function foo() {} class foo {     static function staticmethod() {} }  /* 非限定名稱 */ foo(); // 解析為函數(shù) FooBarfoo foo::staticmethod(); // 解析為類 FooBarfoo ,方法為 staticmethod echo FOO; // 解析為常量 FooBarFOO  /* 限定名稱 */ subnamespacefoo(); // 解析為函數(shù) FooBarsubnamespacefoo subnamespacefoo::staticmethod(); // 解析為類 FooBarsubnamespacefoo,                                   // 以及類的方法 staticmethod echo subnamespaceFOO; // 解析為常量 FooBarsubnamespaceFOO                                    /* 完全限定名稱 */ FooBarfoo(); // 解析為函數(shù) FooBarfoo FooBarfoo::staticmethod(); // 解析為類 FooBarfoo, 以及類的方法 staticmethod echo FooBarFOO; // 解析為常量 FooBarFOO ?>

        讓我們好好看看這個例子, 在這個例子當(dāng)中,最突出的就是foo::staticmethod(),大家有沒有看出來,不管是在哪一種用法中,我們都需要使用到“foo::staticmethod()”,但這是什么意思呢?我們具體來了解一下。

        根據(jù)例子我們可以看到“staticmethod()”其實是一個靜態(tài)方法的名稱,而“foo::”是根據(jù)“foo()”進(jìn)行解析的。

        PHP 命名空間中的類名可以通過三種方式引用:

        • 非限定名稱,或不包含前綴的類名稱,例如“$c=new foo();”或“foo::staticmethod();”。如果當(dāng)前命名空間是 space,foo 將被解析為 spacefoo。如果foo是全局代碼,不包含在任何命名空間中的代碼,則 foo 會被解析為foo。

          • 警告:如果未定義命名空間中的函數(shù)或常量,則非限定函數(shù)名或常量名將解析為全局函數(shù)名或常量名。

        • 限定名稱,或包含前綴的名稱,例如 $c = new espacefoo();spacefoo::staticmethod();。如果當(dāng)前的命名空間是 space,則 foo 會被解析為 spacespacefoo。如果使用 foo 的代碼是全局的,不包含在任何命名空間中的代碼,foo 會被解析spacefoo

        • 完全限定名稱,或包含了全局前綴操作符的名稱,例如, $c = new spacefoo();spacefoo::staticmethod();。在這種情況下,foo 總是被解析為代碼中的文字名(literal name)spacefoo

        完全限定名稱的函數(shù),調(diào)用類和常量時會在編譯的時候發(fā)生解析。

        非完全限定名稱會根據(jù)導(dǎo)入規(guī)則在編譯的時候發(fā)生轉(zhuǎn)換。

        在名稱空間中,所有未根據(jù)導(dǎo)入規(guī)則轉(zhuǎn)換的限定名稱前面都有當(dāng)前名稱空間名稱。

        就說到這里了,有其他想知道的,可以點擊這個哦。→ →php視頻教程

        贊(0)
        分享到: 更多 (0)
        網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號
        主站蜘蛛池模板: 国产精品成人69XXX免费视频| 国产精品高清免费网站| 国产亚洲综合成人91精品| 欧美精品黑人粗大视频| 91精品观看91久久久久久| 成人无码精品1区2区3区免费看| 四虎成人精品| 国产精品免费久久| 久久精品国产免费一区| 国产欧美亚洲精品A| 日韩精品无码一区二区三区| 久久五月精品中文字幕| 国产精品高清2021在线| 日本一区精品久久久久影院| 99精品无人区乱码在线观看 | 精品无码一区在线观看| 最新国产精品无码| 无码精品蜜桃一区二区三区WW | 亚洲精品国产成人专区| 国产午夜精品一区理论片| 国产精品视频白浆免费视频| 亚洲AV乱码久久精品蜜桃| 亚洲精品无码日韩国产不卡?V| 久久精品成人欧美大片| 国产在线精品一区二区三区不卡| 粉嫩精品美女国产在线观看| 91精品视频观看| 国产欧美精品专区一区二区| 国产成人久久久精品二区三区 | 中文字幕亚洲精品| 91久久精品电影| 国产精品va久久久久久久| 国产精品白丝jkav网站| 国产精品自产拍在线观看花钱看| 国产精品99无码一区二区| 黄床大片免费30分钟国产精品| 国产精品男男视频一区二区三区| 国产精品无码DVD在线观看| 精品亚洲视频在线观看| 午夜精品久久久久9999高清| 一区二区国产精品|