站長資訊網
        最全最豐富的資訊網站

        php namespace的用法

        php namespace的用法:【namespace Article;】,表示創建一個名為Article的命名空間。需要注意的是,當前腳本文件的第一個命名空間前面不能有任何代碼。

        php namespace的用法

        命名空間一個最明確的目的就是解決重名問題,PHP中不允許兩個函數或者類出現相同的名字,否則會產生一個致命的錯誤。這種情況下只要避免命名重復就可以解決,最常見的一種做法是約定一個前綴。

        (推薦教程:php視頻教程)

        命名空間將代碼劃分出不同的空間(區域),每個空間的常量、函數、類(為了偷懶,我下邊都將它們稱為元素)的名字互不影響, 這個有點類似我們常常提到的'封裝'的概念。

        創建一個命名空間需要使用namespace關鍵字,這樣:

        <?php //創建一個名為'Article'的命名空間 namespace Article; ?>

        要注意的是,當前腳本文件的第一個命名空間前面不能有任何代碼,下面的寫法都是錯誤的:

        例一

        //在腳本前面寫了一些邏輯代碼 <?php $path = "/"; class Comment { } namespace Article; ?>

        例二

        </html> <?php namespace Article; ?>

        為什么要說第一個命名空間呢?因為同一腳本文件中可以創建多個命名空間。

        下面我創建了兩個命名空間,順便為這兩個空間各自添加了一個Comment類元素:

        <?php //創建一個名為'Article'的命名空間 namespace Article; //此Comment屬于Article空間的元素 class Comment { } //創建一個名為'MessageBoard'的命名空間 namespace MessageBoard; //此Comment屬于MessageBoard空間的元素 class Comment { } ?>

        在不同空間之間不可以直接調用其它元素,需要使用命名空間的語法:

        <?php namespace Article; class Comment { } namespace MessageBoard; class Comment { } //調用當前空間(MessageBoard)的Comment類 $comment = new Comment(); //調用Article空間的Comment類 $article_comment = new ArticleComment(); ?>

        可以看到,在MessageBoard空間中調用article空間里的Comment類時,使用了一種像文件路徑的語法: 空間名元素名

        除了類之外,對函數和常量的用法是一樣的,下面我為兩個空間創建了新的元素,并在MessageBoard空間中輸出了它們的值。

        <?php namespace Article; const PATH = '/article'; function getCommentTotal() { 	return 100; } class Comment { } namespace MessageBoard; const PATH = '/message_board'; function getCommentTotal() { 	return 300; } class Comment { } //調用當前空間的常量、函數和類 echo PATH; ///message_board echo getCommentTotal(); //300 $comment = new Comment(); //調用Article空間的常量、函數和類 echo ArticlePATH; ///article echo ArticlegetCommentTotal(); //100 $article_comment = new ArticleComment(); ?>

        然后我的確得到了Article空間的元素數據。

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 国产一区麻豆剧传媒果冻精品| 亚洲AV无码成人精品区在线观看| 日韩熟女精品一区二区三区| 国产精品久久久久…| 久久国产香蕉一区精品| 四虎精品影院4hutv四虎| 国产在线精品免费aaa片| 亚洲精品成人a在线观看| 国产亚洲精品线观看动态图| 国内精品久久久久久野外| 国产suv精品一区二区33| 日韩人妻精品一区二区三区视频| 午夜一级日韩精品制服诱惑我们这边| AAA级久久久精品无码区| 久久91精品久久91综合| 69久久夜色精品国产69| 久久精品人人做人人妻人人玩| 中文字幕久久精品无码| 欧美日韩国产成人高清视频,欧美日韩在线精品一 | 精品视频一区二区三区| 99久久精品国产一区二区| 久久精品国产精品国产精品污| 91精品国产色综合久久| 精品久久久久久无码专区| 老司机67194精品线观看| 无码人妻精品中文字幕免费| 亚洲AV日韩精品久久久久| 亚洲精品成人片在线观看精品字幕| 亚洲国产精品成人午夜在线观看 | 国产精品欧美亚洲韩国日本| 18国产精品白浆在线观看免费| 久久久国产精品亚洲一区| 久久国产精品无码HDAV | 亚洲国产另类久久久精品黑人| 亚州日韩精品专区久久久| 无码乱码观看精品久久| 亚洲精品无码99在线观看| 日韩精品专区在线影院重磅| 午夜精品一区二区三区免费视频 | 亚洲精品国产综合久久一线| 亚洲欧美日韩精品久久亚洲区|