-----------------------------------------------------------------------------------------------

/*
|----------------------------------------
|一.动态访问命名空间的元素
|@黑眼诗人 <www.farwish.com>
|----------------------------------------
*/
namespace me\poet; function test()
{
echo '1111';
} $fun = 'test';//不能这么用,最后$fun()无法动态调用到test():Fatal error: Call to undefined function test() $fun = '\me\poet\test';//正确 //$fun = 'me\poet\test';//正确 $fun(); //也就是说,动态调用必须是 限定名称 或 完全限定名称(概念参考:PHP命名空间的使用基础
/*
|-------------------------------------
|二.魔术常量 和 操作符
|-------------------------------------
*/
namespace me\poet; function test()
{
echo '1';
} echo __NAMESPACE__; //魔术常量:命名空间的名称(输出 me\poet) //namespace操作符:显式访问当前命名空间或子命名空间中的元素,等价于类中的self操作符
\me\poet\test(); namespace\test(); //上两行代码等价。
/*
|-------------------------------------------
|三.别名、导入 和 全局空间(含多个例子)
|-------------------------------------------
*/
namespace ws\weichen\www; use ws\weichen\www as poet;//定义别名poet //use ws\weichen\www; //不加as,则取最后的作为别名(www) function demo()
{
echo '1';
} \ws\weichen\www\demo(); poet\demo(); //www\demo();    //不加as的情况,则这样调用 //以上三行代码效果一样。 //按规则(ws\weichen\www)命名的好处:若更换域名,只要把前缀名称改了就可以,不影响后面代码中别名www的使用。 /*--------------------------------------------------------*/
/* 导入 */
include 'hello.class.php'; use \ws\weichen\www; use \Hello;

/*--------------------------------------------------------*/
/* 支持多个use语句 */
use \nihao\shijie as hello, \ws\weichen\www; /*--------------------------------------------------------*/
/* 全局空间:反斜线调用 */

namespace A\B\C;
//这个函数是 A\B\C\fopen();
function fopen()
{
$f = \fopen('demo.txt');//调用全局fopen函数
return $f;
}

Link: http://www.cnblogs.com/farwish/p/3913784.html

@黑眼诗人 <www.farwish.com>

最新文章

  1. Python开发入门与实战16-APACHE部署
  2. c# 禁用 webBrowser 声音(转)
  3. Scala.js v0.1 发布,在浏览器直接运行 Scala
  4. JS重点特性——闭包详解
  5. ACM题目————二叉树最大宽度和高度
  6. 【转载】mysql 四种隔离级别分析
  7. NOIP2009 最优贸易
  8. ASP.NET 4.0升级至ASP.NET 4.5需要注意的地方 【转】
  9. OC-nonatomic和atomic相关
  10. MongoDB应用案例:使用 MongoDB 存储日志数据
  11. Go-new和make
  12. 基于ssh,shell,python,iptables,fabric,supervisor和模板文件的多服务器配置管理
  13. Sphinx学习笔记(一)
  14. python生成单词壁纸
  15. 基于物理规则的渲染(PBR)
  16. BZOJ2721或洛谷1445 [Violet]樱花
  17. MQ5.3在redhat9上的安装
  18. centos nginx+php+mysql 安装libiconv不成功
  19. 案例:java进制互转
  20. HDU 2141 Can you find it? (二分)

热门文章

  1. c#day04从控制台获取一个字符
  2. css3属性兼容性
  3. Centos7基于容器安装运行Docker私有仓库及添加认证
  4. 「NOI2018」屠龙勇士(CRT)
  5. python学习之----正则表达式
  6. jquery 弹框,确定、取消
  7. MVC Html辅助方法DropDownList的简单使用、连接MYSQL数据库用自定义model类接收
  8. android 实现一个简单纯文本的ListView
  9. android TextView 例子代码(文字中划线、文字下划线)
  10. mysql安装卸载-windows