日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

php namespace的用法

發布時間:2023/12/31 综合教程 22 生活家
生活随笔 收集整理的這篇文章主要介紹了 php namespace的用法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

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

命名空間一個最明確的目的就是解決重名問題,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 \\Article\\Comment();
?>

可以看到,在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 \\Article\\PATH;
///article
echo \\Article\\getCommentTotal();
//100
$article_comment = new \\Article\\Comment();
?>

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

相關推薦:php培訓

總結

以上是生活随笔為你收集整理的php namespace的用法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。