PHP 命名空间
PHP 命名空间
命名空间是解决两个不同问题的限定符:
- 它们通过将一起工作的班级分组来更好地组织起来,以完成一项任务
- 它们允许同一个名称用于多个类
例如,您可能有一组类用于描述 HTML 表格,例如 Table、Row 和 Cell,同时还有另一组类用于描述家具,例如 Table、Chair 和 Bed。可以使用命名空间将类组织成两个不同的组,同时还可以防止混淆 Table 和 Table 这两个类。
声明命名空间
命名空间在文件开头使用以下语句声明: namespace
关键词:
句法
声明一个名为 Html 的命名空间:
命名空间 HTML;
笔记: Anamespace
声明必须是 PHP 文件中的第一部分。以下代码无效:
<?php
回显“你好,世界!”;
命名空间 Html;
...
?>
此文件中声明的常量、类和函数将属于 HTML 命名空间:
例子
在 Html 命名空间中创建一个 Table 类:
<?php
命名空间 Html;
类表{
公共$title =“”;
公共 $numRows = 0;
公共函数消息(){
回显<p>表 '{$this->title}' 有 {$this->numRows} 行。</p> “;
}
}
$表=新表();
$table->title = "我的表格";
$表->行数 = 5;
?>
<!DOCTYPE html>
<html>
<body>
<?php
$表->消息();
?>
</body>
</html>
亲自尝试 »
为了进一步组织,可以使用嵌套的命名空间:
句法
在名为 Code 的命名空间内声明一个名为 Html 的命名空间:
命名空间 代码\Html;
使用命名空间
任何遵循 namespace
声明是在命名空间内操作的,因此属于命名空间的类无需任何限定符即可实例化。要从命名空间外部访问类,该类需要附加命名空间。
当同一命名空间中的许多类被同时使用时,使用 namespace
关键词:
命名空间别名
为命名空间或类赋予别名以使其更易于编写会很有用。这可以通过 use
关键词: