前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >PHP 命名空间元素访问及use的使用

PHP 命名空间元素访问及use的使用

作者头像
很酷的站长
发布2023-01-05 08:20:08
1.1K0
发布2023-01-05 08:20:08
举报
PHP 命名空间元素访问及use的使用
PHP 命名空间元素访问及use的使用
1. 命名空间的访问分为三种模式

非限定名称访问、限定名称访问、完全限定名称访问

非限定名称访问

代码语言:javascript
复制
var_dump();// 不加空间名前缀访问空间元素

限定名称访问

代码语言:javascript
复制
\think\var_dump();// 加空间名前缀访问空间元素

完全限定名称访问

代码语言:javascript
复制
\app\think\var_dump();//从根命名空间开始访问
<?php
namespace app\think;
function var_dump()
{
    echo 'this is one data <br>';
}
var_dump();//非限定名称访问
namespace app;
think\var_dump();//限定名称访问
\app\think\var_dump();//完全限定名称访问
2. 通过 use 关键字访问空间元素

use 语法规则

使用 as 时空间元素名称则被新名称取代, 原名称不能用了, 故不能称之为起别名, 应该是起新名

use 引入空间元素是从根命名空间引入的, 也就是 完全限定名称访问

代码语言:javascript
复制
use [元素类型] [命名空间\]类名 [as 新名称];

空间元素都可以通过 use 引入, 但是对于不同类型的空间元素引入方式

代码语言:javascript
复制
use 空间名称\类名;//引入类
use function 空间名称\函数名;//引入函数
use const 空间名称\常量名;//引入常量

使用示例

代码语言:javascript
复制
use app\A; // 类
use const app\PI;//常量
use function app\var_dump;//函数

PHP7 开始支持使用 {} 一次引入多个相同命名空间下的多个空间元素 (PHP7之前需要使用多次 use)

代码语言:javascript
复制
use app\{
    A,//类
    const PI,//常量
    function var_dump,//函数
};
3. 系统默认的空间元素访问规则

系统内置的函数、常量、类都属于全局空间

函数和类在空间内访问时系统会先在当前空间找, 找不到再去全局空间找; 而类不会去全局空间下找, 当前空间下类找不到时将抛出 Fatal error

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 命名空间的访问分为三种模式
  • 2. 通过 use 关键字访问空间元素
  • 3. 系统默认的空间元素访问规则
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档