文档章节

命名空间 导入和别名,全局命名空间(三)

huangyanxiong
 huangyanxiong
发布于 2015/04/18 16:00
字数 386
阅读 25
收藏 0

导入和别名

官方解释:允许通过别名引用或导入外部的完全限定名称,是命名空间的一个重要特征。这有点类似于在类 unix 文件系统中可以创建对其它的文件或目录的符号连接

namespace My\Full;
class Classname{
    function __construct(){
        echo __NAMESPACE__.'<br />';
    }
}

namespace My\Full\NSname\subns;
function func(){
    echo __NAMESPACE__;
}

namespace FOO\bar;
const name = 1;
function say(){
    echo __NAMESPACE__.'<br />';
}
namespace Foo;
class foo{
    public function __construct(){
        echo 'huangyanxiong';
    }
}

use My\Full\Classname as Another;
use My\Full\NSname as Nsname;
bar\say();  //限定名称 \\解释为Foo\bar\下的bar方法
new Another();  //别名导入 \\解释为My\Full\下Classname类
Nsname\subns\func();//别名导入,解释为My\Full\NSname\subns 下的func方法 这里就好像你用将一个目录的名称缩短后,然后继续写子目录,
new namespace\foo();//这个namespace相当于self,当前命名空间下的foo方法
\ReflectionObject::export($a);




需要注意的问题:


1:PHP 命名空间支持 有两种使用别名或导入方式:为类名称使用别名,或为命名空间名称使用别名。注意PHP不支持导入函数或常量。(官方)

2:如果没有定义任何命名空间,所有的类与函数的定义都是在全局空间,与 PHP 引入命名空间概念前一样。在名称前加上前缀 \表示该名称是全局空间中的名称,即使该名称位于其它的命名空间中时也是如此。


© 著作权归作者所有

共有 人打赏支持
huangyanxiong
粉丝 14
博文 66
码字总数 28662
作品 3
程序员
PHP之命名空间

从广义上来说,命名空间是一种封装事物的方法。在很多地方都可以见到这种抽象概念。例如,在操作系统中目录用来将相关文件分组,对于目录中的文件来说,它就扮演了命名空间的角色。这个原理应...

jjjssswww
2017/06/06
0
0
PHP之新手自学基础知识(六)——拓展篇之命名空间

命名空间概述 什么是命名空间?从广义上来说,命名空间是一种封装事物的方法。在很多地方都可以见到这种抽象概念。例如,在操作系统中目录用来将相关文件分组,对于目录中的文件来说,它就扮...

天谴残魂
01/09
0
0
php命名空间划重点

使用命名空间可以防止在定义常量、函数、类的时候,为了避免命名冲突而写出超长的变量名 define用于全局,使用更灵活(可以用变量、可以放到条件语句中) const用于类或者命名空间中 class内...

码上有春天
2016/12/22
13
0
复习PHP-语言参考-命名空间

1.定义命名空间 命名空间只作用于类,函数,常量。(注意只能是const的常量,而不能是define出来的常量,我测试是报错的。) 通过namespace 声明。 必须在所有代码之前声明。 2.定义子命名空...

qzd1989
2014/05/02
0
0
PHP命名空间(Namespace)的使用详解

对于命名空间,官方文档已经说得很详细[查看],我在这里做了一下实践和总结。 命名空间一个最明确的目的就是解决重名问题,PHP中不允许两个函数或者类出现相同的名字,否则会产生一个致命的错...

Surjur
2015/02/12
0
0

没有更多内容

加载失败,请刷新页面

加载更多

《看图轻松理解数据结构与算法系列》导引贴

最近学习数据结构,遇到一个很喜欢的博主,他的文章图文并茂,理解起来很容易。特此开贴记录,方便反复阅读。 博主主页 https://juejin.im/user/57c3970f79bc440063e58518/posts?sort=popul...

科陆李明
36分钟前
1
0
20.27 分发系统介绍~ 20.30 expect脚本传递参数

分发系统介绍分发系统-expect讲解(也就是一个分发的脚本)场景:业务越来越大,网站app,后端,编程语言是php,所以就需要配置lamp或者lnmp,最好还需要吧代码上传到服务器上;但是因...

洗香香
50分钟前
2
0
设计一个百万级的消息推送系统

前言 首先迟到的祝大家中秋快乐。 最近一周多没有更新了。其实我一直想憋一个大招,分享一些大家感兴趣的干货。 鉴于最近我个人的工作内容,于是利用这三天小长假憋了一个出来(其实是玩了两...

crossoverJie
56分钟前
2
0
软件架构:5种你应该知道的模式

Singleton(单例模式)、仓储模式(repository)、工厂模式(factory)、建造者模式(builder)、装饰模式(decorator)……大概每个上课听讲的程序员都不会陌生——软件的设计模式为我们提供...

好雨云帮
今天
3
0
OSChina 周二乱弹 —— 这只是一笔金钱交易

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @小小编辑:推荐歌曲《暮春秋色》- 窦唯 / 译乐队 《暮春秋色》- 窦唯 / 译乐队 手机党少年们想听歌,请使劲儿戳(这里) @我没有抓狂:跨服聊...

小小编辑
今天
1K
19

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部