PHP 命名空间

命名空间对于PHP来说就像是文件和目录的关系,它允许我们为两个不同的类使用相同的类名称。

比如我们希望有个名为Line的类,这个类可以在图像上画一条直线。然而,Line类的画线功能在处理像素格式图像和矢量格式图像时是不大一样的,因此理想的解决方案便是实用两个带有命名空间的类。

命名空间使用两个关键的语言结构:namespace 和 use。要声明一个命名空间,需要在文件的顶部指定命名空间的名称,之后在文件中声明的所有类酒都属于这个命名空间的了。

需要注意的是,namespace 代码行必须在文件的顶部,在其他任何变量、类或者函数定义之前。


声明命名空间如下所示:

<?php
namespace Vector;

class Line{
     public function draw($x1, $y1, $x2, $y2){ ... }
}

使用命名空间如下所示:

<?php
require_once('Vector.php');

$line = new Vector::Line();
$line->draw(1,1,1,1);

此外,如果存在多个层次的命名空间,如 Graphics::Vector::Line 便是一个有效的命名空间。而随着命名空间越来越多,可能会有点繁琐,因此我们可以使用 use 来简略它。

用法如下:

<?php
require('Vector.php');

use Vector::Line as Line;
$line = new Line();
$line->draw(1,1,1,1);
?>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值