thinkphp命名空间总结案例
2016-05-01 21:47
591 查看
namespace 使用命名空间主要是为了在引入相同的文件名类名和函数的时候,会发生冲突,为了解决这种冲突需要使用命名空间。
namespace的使用:
1、namespace一般和文件夹的名字相同,使用\作为区分,
2、namespace在使用的文件中调用类对象的时候需要加上,命名空间的前缀。在使用自动加载函数的时候,命名空间的前缀也会被带入classname的参数中。
3.在namespace的test文件中,使用不使用命名空间是没有关系的。如果要使用use,就得先声明当前的命名空间。使用use 就可以简写 命名空间,在多处使用类名的时候可以使用use,否则不推荐。
use work;//在创建其他目录的文件时候就可以简写类名
new A( );//否则应该写成这样" new \work\A( )"
文件一此文件在work目录下文件名和文件二相同:
namespace work;
class A{
function call ( ){
echo"myname A";
}
}
文件二此文件在work/name/目录下:
namespace work\name;
class A{
function call( ){
echo"nyname B";
}
}
文件三此文件用于以上两个的测试:
<?php
//namespace work\A;
//use work; 可以省略的哦!!!
require '../a.class.php';
require './a.class.php';
$a=new \work\A();
$a->call();
$b=new \work\name\A();
$b->call();
?>
使用use访问命名空间需要拼接 “feidao\name”
namespace的使用:
1、namespace一般和文件夹的名字相同,使用\作为区分,
2、namespace在使用的文件中调用类对象的时候需要加上,命名空间的前缀。在使用自动加载函数的时候,命名空间的前缀也会被带入classname的参数中。
3.在namespace的test文件中,使用不使用命名空间是没有关系的。如果要使用use,就得先声明当前的命名空间。使用use 就可以简写 命名空间,在多处使用类名的时候可以使用use,否则不推荐。
use work;//在创建其他目录的文件时候就可以简写类名
new A( );//否则应该写成这样" new \work\A( )"
文件一此文件在work目录下文件名和文件二相同:
namespace work;
class A{
function call ( ){
echo"myname A";
}
}
文件二此文件在work/name/目录下:
namespace work\name;
class A{
function call( ){
echo"nyname B";
}
}
文件三此文件用于以上两个的测试:
<?php
//namespace work\A;
//use work; 可以省略的哦!!!
require '../a.class.php';
require './a.class.php';
$a=new \work\A();
$a->call();
$b=new \work\name\A();
$b->call();
?>
使用use访问命名空间需要拼接 “feidao\name”
相关文章推荐
- 一个关于if else容易迷惑的问题
- PHP5.2.*防止Hash冲突拒绝服务攻击的Patch
- 深入理解PHP之匿名函数
- JSP/PHP基于Ajax的分页功能实现
- 关于PHP通过PDO用中文条件查询MySQL的问题。
- 什么是设计模式
- PHP数据库长连接mysql_pconnect的细节
- kindeditor 批量上传 上传失败 thinkphp swfupload session
- Php Installing An Expansion
- php7 读取php.ini[4]
- PHP+Apache在Windows 9x下的安装和配置
- IIS 6 的 PHP 最佳配置方法
- 安装Apache和PHP的一些补充
- Linux Apache+MySQL+PHP
- 建立Apache+PHP+MySQL数据库驱动的动态网站
- PHP 5.3.0 安装分析心得
- apache 环境下 php 的配置注意事项
- 简单好用的PHP分页类
- ASP.NET、ASP、PHP、JSP之间有什么区别?