1.命名空间前不能接"\";

namespace MyProject\Sub\Level; // it's right;
namespace \MyProject\Sub\Level; // it's wrong;

2.访问命名空间下的类/常量/函数是可以带"\"的,可以参考手册命名空间与动态语言特征

namespace namespacename;
const constname = "namespaced";
echo constant('\namespacename\constname'), "\n"; // prints namespaced
echo constant('namespacename\constname'), "\n"; // also prints namespaced

3.use引入类/常量/函数时,跟访问命名空间下的类/常量/函数一样,是可带可不带"\"的

namespace namespacename;
use Exception;
$a = new Exception('hi');

或者

namespace namespacename;
use \Exception;
$a = new Exception('hi');

4.没有声明命名空间的地方统一用根作为命名空间,即"\"

5.在命名空间中调用别的命名空间,必须按照当前命名空间作为绝对或相对路径

namespace imageHandler\stamp;
class Common extends \imageHandler\Decorator
{
}
//在imageHandler\stamp下调用上一层的Decorator,需要完整(绝对)路径:\imageHandler\Decorator

6.基于字符串变量动态调用的类/常量/函数名,必须使用绝对路径

$o = 'Rules';
new $o();//如果Rules所在的命名空间不是根,这里的实例化将提示找不到该类

[PHP]命名空间的一些要点的更多相关文章

  1. .NET Framework框架介绍

    1.内容 .net framework c#和.net关系 掌握C#中命名空间2..net 就是微软提供的一个开发平台 版本: vs2008 3.5 vs2010 4.0 vs2012 2013 20 ...

  2. .NET 扩展方法(Extention Method)的要点

    扩展方法Extention Method的主要介绍在:http://msdn.microsoft.com/zh-cn/library/bb383977(v=vs.100).aspx. 扩展方法的意义在 ...

  3. C#反射技术概念作用和要点

    反射(Reflection)是.NET中的重要机制,通过放射,可以在运行时获得.NET中每一个类型(包括类.结构.委托.接口和枚举等)的成员,包括方法.属性.事件,以及构造函数等.还可以获得每个成员的 ...

  4. 【C#】第3章学习要点(一)--整体把握

    分类:C#.VS2015 创建日期:2016-06-18 使用教材:(十二五国家级规划教材)<C#程序设计及应用教程>(第3版) 一.使用别人已经设计好的类简化你的代码编写工作量 当让你去 ...

  5. 【C#】第2章学习要点

    分类:C#.VS2015 创建日期:2016-06-15 教材:(十二五国家级规划教材)<C#程序设计及应用教程>(第3版) 一.本章要点 C#数据类型分两大类:值类型.引用类型. 值类型 ...

  6. 深入理解JavaScript系列(1):编写高质量JavaScript代码的基本要点

    深入理解JavaScript系列(1):编写高质量JavaScript代码的基本要点 2011-12-28 23:00 by 汤姆大叔, 139489 阅读, 119 评论, 收藏, 编辑 才华横溢的 ...

  7. PHP 使用命名空间(namespace),实现自动加载

    示例: #/DB/MySql.class.php也就是DB文件夹下有MySql.class.php文件 namespace DB; class MySql { public function __co ...

  8. 【C#】1.2 控制台应用程序学习要点

    分类:C#.VS2015 创建日期:2016-06-14 教材:十二五国家级规划教材<C#程序设计及应用教程>(第3版) 一.要点概述 <C#程序设计及应用教程>(第3版)的第 ...

  9. 【C#】1.1 第1章学习要点

    分类:C#.VS2015 创建日期:2016-06-14 教材:十二五国家级规划教材<C#程序设计及应用教程>(第3版) 一.配套源程序(VS2015版)的运行截图 VS2015版的配套源 ...

随机推荐

  1. php与java通用AES加密解密算法

    AES指高级加密标准(Advanced Encryption Standard),是当前最流行的一种密码算法,在web应用开发,特别是对外提供接口时经常会用到,下面是我整理的一套php与java通用的 ...

  2. 四、文件IO——内核数据结构和原子操作

    4.1 缓存 buff 说明 一般设置缓存 buff  的大小是由一定的规律的,就是根据磁盘块的大小来定. Linux下输入命令: df -k  查看磁盘 可以用命令查看下 /dev/sda1 磁盘的 ...

  3. luogu 1268 树的重量

    打眼一看就是最小生成树嘛,但经过板子wa掉的经历后得知,,emmmm,原来是, 构造! (虽然不知是什么但觉得听起来很厉害的样子...手动微笑) n=2的情况 自然就是g(1,2) n=3的情况,由于 ...

  4. Linux 下杀毒可用工具 clamav

    clamav 杀毒工具:Linux下可用的杀毒工具: 下载地址: 最新 包 0.101 官网下载地址:http://www.clamav.net/downloads最新包地址: https://cla ...

  5. cpp #,##

    #define语句中的#是把参数字符串化,##是连接两个参数成为一个整体. #define FACTORY_REF(name) { #name, Make##name } 中#name就是将传入的na ...

  6. 原型理解:prototype

    这一系列的链接的原型对象就是原型链(prototype chain) 1.所有对象都有同一个原型对象,都可通过Object.prototype获得对象引用 2.new出来的构造函数对象原型就是构造函数 ...

  7. luogu P3236 [HNOI2014]画框

    传送门 我们把一种方案的\(\sum a_{i,j}\)和\(\sum b_{i,j}\)看成点\((\sum a_{i,j},\sum b_{i,j})\),那么就只要求横纵坐标之积最小的点,类似于 ...

  8. luogu P3175 [HAOI2015]按位或

    传送门 如果每个位置上的数字的意义是这个位置被加进集合的最早时间,那么我们要求的就是集合中最大数的期望,使用Min-Max容斥,\(E(max(S))=\sum_{T\subset S}(-1)^{| ...

  9. Kaldi的BaseLine训练过程

    steps/train_mono.sh --nj "$train_nj" --cmd "$train_cmd" data/train data/lang exp ...

  10. java 基础 字符类型

    1.char类型的字面量可以是一个英文字母.字符或一个汉字,并且由单引号包括. 2.Java底层使用一个16位的整数来处理字符类型,该数值是一个字符的unicode编码值. unicode: 1.un ...