NIUCLOUD是一款SaaS管理后台框架多应用插件+云编译。上千名开发者、服务商正在积极拥抱开发者生态。欢迎开发者们免费入驻。一起助力发展! 广告
# 命名空间 # namespace 命名空间 ## 第一个命名空间定义的时候前面不要用任何代码 ## ## ## 作用域:声明命名空间之后,到另外声明的命名空间之前。 ## ## ## 命名空间 子空间(用反斜线隔开)公共空间(没有任何命名空间的代码文件都是公共空间) ## ## 类似与文件的目录结构 有层次 ``` namespace shop\user namespace blog\user ``` <h1>调用未定义命名空间方法(公共类): <h1/> ## namespace\公共空间的类 ## \Ab类 这里的Ab是公共空间的类 (这样是调用公共空间的一个类Ab) # 类在命名空间使用 ``` 第一种: 直接实例化 new \命名空\类名(); ``` 注意:要加反斜线,根空间,否则会默认在当前的命名空间。 ## 第二种: ## ## use 关键字 ## ## 如果 类名 有相同的 加 as(别名) 关键字避免冲突 ## 代码如下: 9.8.php文件里的类 ------------------------------------------------------------------------------- ~~~ <?php namespace xiao\xin; class Cul{ function xiao() { echo"我是9.8的文件"; } } ~~~ ------------------------------------------------------------------------------- ## 9.9.php文件里调用 ~~~ <?php namespace lao; use xiao\xin\Cul; include("9.8.php"); $bc=new Cul; //实例化类 $bc->xiao(); ~~~ -------------------------------------------------------------------------------------- 命名空间调用公共空间的方法 9.8.php文件里的类 ------------------------------------------------------------------------------------ ~~~ <?php class Cul{ function xiao() { echo"我是9.8的文件"; } } ~~~ ------------------------------------------------------------------------------------ 9.9.php里的文件 ~~~ <?php namespace la; use Cul; //引入公共类的空间类方法 include("9.8.php"); $bc=new Cul; //访问公共类的方法 $bc->xiao(); ~~~ ## 还有一种方法 use到命名空间命名 然后实例化的时候 命名空间名称\类名 如下代码 ``` <?php namespace lao; use xiao\xin; include("9.8.php"); $bc=new xin\Cul; //实例化类的时候必须先加命名空间名称\类名 $bc->xiao(); ```