[namespace]PHP命名空间的动态访问 & 使用技巧
-----------------------------------------------------------------------------------------------
/*
|----------------------------------------
|一.动态访问命名空间的元素
|@黑眼诗人 <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>
[namespace]PHP命名空间的动态访问 & 使用技巧的更多相关文章
- nginx配置静态资源与动态访问分离【转】
在前面的博客中<说说 NGINX 的配置及优化>的 2.5 小节里面,提到 location 模块是 nginx 中用的最多的,也是最重要的模块,负载均衡.反向代理.虚拟域名等都与它相关. ...
- 十九、.net core使用SoapCore开发webservice接口,以及使用HttpClientFactory动态访问webservice接口
使用SoapCore实现在.net core平台下开发webservice:以及使用HttpClientFactory动态访问webservice. 首先,需要在包项目下面引用SoapCore: 然后 ...
- Django 中 app_name (应用命名空间) 和 namespace (实例命名空间) 的区别
转自:https://www.jianshu.com/p/404500a0408a 补充理解: 先把官网上对应用命名空间(app_name)和实例命名空间(namespace)的解释贴上: app_n ...
- php namespace use 命名空间
也可以参考PHP官网说明:http://php.net/manual/en/language.namespaces.importing.php namespace(以下简称ns).在定义了一个ns之后 ...
- 使用XLinq.XElement读取带Namespace(命名空间)的XML
简介 本文主要介绍通过XELemet去读取含有namespaces(xmlns)的XML,这也是偶然间发现这个问题的,一个群里的小伙伴突然问起这个,以此记录一下. 背景 一个XML文档可能包括来自多个 ...
- [namespace]PHP命名空间的使用基础
-------------------------------------------------------------------------------------------------- 一 ...
- Calling the Web Service dynamically (.NET 动态访问Web Service)
针对.NET平台下的WebService访问,为达到不添加引用的情况下,动态调用外部服务. 主体方法: public class WebServiceHelper { //Calling the We ...
- C# 动态访问webserver 帮助类
/* 调用方式 * string url = "http://www.webservicex.net/globalweather.asmx" ; * string[] args = ...
- Objective-C 的动态提示和技巧
过去的几年中涌现了大量的Objective-C开发者.有些是从动态语言转过来的,比如Ruby或Python,有些是从强类型语言转过来的,如Java或C#,当然也有直接以Objective-C作为入门语 ...
随机推荐
- L1正则化
正则化项本质上是一种先验信息,整个最优化问题从贝叶斯观点来看是一种贝叶斯最大后验估计,其中正则化项对应后验估计中的先验信息,损失函数对应后验估计中的似然函数,两者的乘积即对应贝叶斯最大后验估计的形式, ...
- 浅析Linux DeviceTree
文本将介绍Linux DeviceTree的相关知识,包括DeviceTree源文件.结构.语法.编写规则等. DeviceTree基础 DeviceTree(以下简称DT)用于描述设备信息以及设备于 ...
- 【TensorFlow学习笔记 】name_socpe variable_scope
[引言]TensorFlow中的命名域是非常重要的概念,涉及到参数共享,方便命名参数管理,定义图结构 本文主要介绍name_scope 和 variable_scope,slim包中的arg_scop ...
- CS229 6.6 Neurons Networks PCA主成分分析
主成分分析(PCA)是一种经典的降维算法,基于基变换,数据原来位于标准坐标基下,将其投影到前k个最大特征值对应的特征向量所组成的基上,使得数据在新基各个维度有最大的方差,且在新基的各个维度上数据是不相 ...
- solr7.4 tomcat环境下搭建(windows)
-版本solr-7.4.0 -环境 Windows jdk1.8 -启动方式:部署在apache-tomcat-8.5.28,以下简称Tomcat 1. 将solr-7.4.0\server\sol ...
- oracle取出多个字段列中的最大值和最小值
greatest 函数和least函数 select serverid, greatest(e.core0, e.core1, e.score2 ) from e
- Linux常用操作分享
Java开发经常遇到的linux相关操作 1.常用的上传下载(Xshell5) 1).get 从远程服务器上下载一个文件存放到本地,如下: 先通过lcd切换到本地那个目录下,然后通过get file ...
- wordpress写文章添加gif图片变成静态图片的解决办法
添加文章时gif只能静态,记得在添加时选择完整尺寸,不要压缩即可
- HTTP中Get、Post、Put与Delete。了解一下!
1.GET请求会向数据库发索取数据的请求,从而来获取信息,该请求就像数据库的select操作一样,只是用来查询一下数据,不会修改.增加数据,不会影响资源的内容,即该请求不会产生副作用.无论进行多少次操 ...
- linux中ps命令
ps的参数 -C的使用 [root@centos7 ~]# ps -C nginx -o user,pid,comm USER PID COMMAND root 2697 nginx nginx 26 ...