php对象和命名空间

来源:互联网 发布:mac桌面提醒便签 编辑:程序博客网 时间:2024/05/17 07:10

demo

namespace shippingclass courier{    public $name;    public $price;    public fucntion loade($num) {        return $this->name= $num;    }}
  • 在另一个文件中,可以不再仅仅实例化一个courier类,如果这么做,php将在全局命名空间中寻找这个类,结果当然是找不到它。相反,引用这个类时必须使用它的全名:shpping\courier.
  • 当在全局命名空间里将所有的类整齐地放入小命名空间时,另一个命名空间的代码中包含类时需要将一个引导命名空间运算符(namespace operater换句话说其实就是一个反斜杠)放在类名的前面:这表明php将从命名空间栈的顶部开始查找。因此,在任意命名空间中使用命名空间的中的类,可以这样做
    -namespace fred
$new = new \shpping\courier();
  • 要引用courier类,我们需要知道自己当前在哪个命名空间中,比如:
  • 在shipping命名空间中,称为courier.
  • 在全局命名空间中,称为 shipping/courier.
  • 在其他命名空间中,需要从顶部开始,并像这样指代它:、shpping\courier.
  • 可以在fred命名空间下声明另一个courier类,而且在代码中可以使用具有相同类名的两个对象而不报错,只是要在顶层命名空间中再次声明这两个相同的类。当你想使用两个(或更多)框架下的元素时不仅不会出现问题,而且这两个类都有一个类名Log.
0 0