色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

php namespae

傅智翔1年前8瀏覽0評論

PHP namespace是PHP5.3以后引進的一個新特性,可以避免在PHP中出現函數或類的命名沖突。 假如在系統把多個第三方庫的代碼整合在一起時,它們里面有許多同名的函數或類,這種情況會導致一個致命的錯誤。這時候就需要命名空間來幫忙了。接下來我們就看看namespace的具體用法。

定義命名空間可以理解成給類、函數、常量一個名稱,在具有相似名字的類、函數或常量之間劃出一個獨立的空間。下面還會有一些關于如何使用命名空間的例子。

namespace MyProject;
class MyClass {} //上面添加了 "namespace MyProject" 之后,MyClass 就被定義在命名空間"MyProject"內。

當然,這個命名空間也可以用在函數和常量上。比如:

namespace MyProject;
function myFunction() {}
const MYCONST = 1;

好了,我們知道如何定義命名空間了,現在我們要了解一下如何使用這個命名空間。

假設我們有兩個類,它們都叫MyClass,它們分別在兩個命名空間里:MyProject和OtherProject。 那么我們如何在腳本中正確地使用它們呢? 這時候,我們就需要用到命名空間前綴操作符“\”。

use MyProject\MyClass; //使用了MyProject下面的MyClass
$obj = new MyClass(); //實例化MyProject下面的MyClass
//同理,可以使用OtherProject下面的MyClass
use OtherProject\MyClass; 
$obj = new \OtherProject\MyClass(); //使用OtherProject下面的MyClass

此外,在同一文件中定義多個命名空間,也是完全可以的。看下面的代碼:

namespace MyProject;
class MyClass {}
namespace OtherProject;
class MyClass {} 
//這樣就讓兩個MyClass都在各自的名字空間內,相互不受影響。
$myClassOne = new MyProject\MyClass(); //現在要使用MyProject的MyClass,在類名前面加上他的命名空間
$myClassTwo = new OtherProject\MyClass(); //使用OtherProject下的MyClass

在一個命名空間中,同一個名稱只能被定義一次,否則會報錯。比如說我們想在MyProject命名空間下面分別定義同名類,那么會報下面的錯誤:

namespace MyProject;
class MyClass {}
class MyClass {} //嘗試定義同名的MyClass
//這時候就會拋出一個Fatal error,看:
//Fatal error: Cannot declare class MyProject\MyClass, because the name is already in use

總之,PHP命名空間可以讓我們在編寫大型程序時,更加清晰地組織我們的代碼,避免各種沖突和不必要的干擾。以上,就是對PHP命名空間的一些介紹,希望能對你有所幫助!