3 回答

TA貢獻1860條經驗 獲得超9個贊

TA貢獻1951條經驗 獲得超3個贊
namespace Your\Namespace\Name;
use It\Is\Class\Name; //調用這個類,而不是調用一個命名空間
use It\Is\Class\MyClass AS OuterClass; //因為MyClass和聲明的類重名,使用AS定義別名
/**
* 全名 \Your\Namespace\Name\MyClass
* extend Name 等價于 extend \It\Is\Class\Name,如果你不寫use It\Is\Class\Name;這句的話
*/
class MyClass extend Name {
use Alert; //調用方法
public function demo() {
$obj = new OuterClass(); //相當于 new \It\Is\Class\MyClass()
$obj = new Object(); //代表 \Your\Namespace\Name\Object;
$obj = new Demo\Object(); //代表 Your\Namespace\Name\Demo\Object;
//根據(jù)以上兩句你應該明白了,namespace是指明該文件所處的命名空間,如果按照你的理解 use 后面是命名空間的話,那么當前文件就同時隸屬于不同的命名空間了,會發(fā)生混亂。
}
}
trait Alert { //全名為\Your\Namespace\Name\Alert
public function vardump() {
var_dump($this);
}
}
$obj = new MyClass();
$obj->vardump();
添加回答
舉報