摘要:/** * trait可以扩展类的功能,功能强大 * trait在类继承的上下文关系中优先级 * 子类>trait>父类 */ trait Func1 { public function test1() &
/**
* trait可以扩展类的功能,功能强大
* trait在类继承的上下文关系中优先级
* 子类>trait>父类
*/
trait Func1
{
public function test1()
{
return '我是trait Func1的方法test1()';
}
}
trait Func2
{
public function test1()
{
return '我是trait Func2的方法test1()';
}
}
class Test
{
use Func1,Func2{//trait中重名方法的解决方案
Func1::test1 insteadof Func2;
Func2::test1 as func2Test1;
}
}
$test = new Test();
echo $test->test1();
echo $test->func2Test1();//如何在一个脚本中声明多个命名空间
namespace one
{
const A='aa';
}
namespace two
{
const A='bb';
}
//公共空间
namespace
{
const A='cc';
//访问空间one的空间的常量
echo one\A;
//访问公共空间的常量
echo A;
}如何导入外部命名空间?用use关键字
命名空间分为三种
非限定名称 相当于当前路径
限定名称 相当于相对路径
完全限定名称 相当于绝对路径
批改老师:天蓬老师批改时间:2018-12-19 15:03:57
老师总结:导入外部空间, 不等于加载了外部文件, 一定要注意呀