PHP-名稱空間-筆記
阿新 • • 發佈:2018-12-10
名稱空間
名稱空間可以理解為windows下的資料夾,在同一資料夾下的檔案時不能同名的,但是在不同的資料夾下時可以出現同名夫人檔案
錯誤程式碼:
<?php
//同一名稱空間下出現相同命名的類,這是錯誤的
class Cat
{
}
class Cat
{
}
?>
使用名稱空間
關鍵字:namespace
注意:第一個名稱空間前面不能有任何程式碼
原始碼:
<?php namespace A;//建立了名稱空間A class Cat { function miao() { echo "喵~"; } } namespace B;//建立了名稱空間B class Cat { function miao() { echo "嗷~"; } } $p = new Cat();//在B的名稱空間下例項化的物件是B空間下的物件 $p->miao(); //要想例項化A空間的物件可以向下面寫 $g = new \A\Cat();//注意第一個'/'是根空間,預設所有的名稱空間都在根空間下 $g->miao(); namespace B\C;//建立了一個子空間 ?>
use和as的使用
請註釋:
/*
$p = new Cat();//在B的名稱空間下例項化的物件是B空間下的物件
$p->miao();
//要想例項化A空間的物件可以向下面寫
$g = new \A\Cat();//注意第一個'/'是根空間,預設所有的名稱空間都在根空間下
$g->miao();
namespace B\C;//建立了一個子空間
*/
原始碼:
<?php include '檔名'; use \A\Cat;//使用A空間的Cat $p = new Cat(); $p->miao(); use \B\Cat as CatB;//使用A空間的Cat,這裡Cat重名,使用取別名的方法解決 $g = new CatB();//例項化B空間的Cat $g->miao(); //不使用use和as的寫法 /* $g = new \B\Cat(); $g->miao(); */ ?>