文档章节

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

huangyanxiong
 huangyanxiong
发布于 2015/04/18 16:00
字数 386
阅读 28
收藏 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
粉丝 15
博文 66
码字总数 28662
作品 3
程序员
私信 提问
PHP之命名空间

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

jjjssswww
2017/06/06
0
0
TypeScript基础入门之命名空间(三)

转载 TypeScript基础入门之命名空间(三) 继续上篇文章[TypeScript基础入门之命名空间(二)] 别名 另一种可以简化名称空间使用方法的方法是使用import q = x.y.z为常用对象创建较短的名称。 不...

durban
10/07
0
0
PHP之新手自学基础知识(六)——拓展篇之命名空间

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

天谴残魂
01/09
0
0
复习PHP-语言参考-命名空间

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

qzd1989
2014/05/02
0
0
php命名空间划重点

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

码上有春天
2016/12/22
13
0

没有更多内容

加载失败,请刷新页面

加载更多

Android 通过DrawableInflater加载自定义Drawable

一、Drawable 在Android系统张,图形图像的绘制需要在画布上进行操作和处理,但是绘制需要了解很多细节以及可能要进行一些复杂的处理,因此系统提供了一个被称之为Drawable的类来进行绘制处理...

IamOkay
12分钟前
1
0
灵活无处安放,所以选择流浪....《漆黑的空间》& 《灰色轨迹》

灵活无处安放,所以选择流浪....《漆黑的空间》& 《灰色轨迹》

yizhichao
19分钟前
1
0
Kafka+Flink 实现准实时异常检测系统

1.背景介绍 异常检测可以定义为“基于行动者(人或机器)的行为是否正常作出决策”,这项技术可以应用于非常多的行业中,比如金融场景中做交易检测、贷款检测;工业场景中做生产线预警;安防...

架构师springboot
今天
7
0
DecimalFormat 类基本使用

/* * DecimalFormat 类主要靠 # 和 0 两种占位符号来指定数字长度 * 0 表示如果位数不足则以 0 填充 * # 表示只要有可能就把数字拉上这个位置 * */ public static void main(String[] args){...

嘴角轻扬30
今天
4
0
This APT has Super Cow Powers.

在Debian/Ubuntu上,apt包管理器内嵌着一个彩蛋. 如果你在命令行界面输入 apt help 在最后一行能找到This APT has Super Cow Powers. 说明该apt具有超级牛力 牛力是个什么梗? 则说明你的系统...

taadis
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部