也可以采用命名空间的方式解决,我们使用文件

时间:2020-03-21 05:48来源:美高梅手机游戏网站
美高梅手机游戏网站 ,本文实例讲述了php 命名空间原理与用法。分享给大家供大家参考,具体如下: 本文实例讲述了PHP命名空间namespace定义及导入use用法。分享给大家供大家参考,具

美高梅手机游戏网站,本文实例讲述了php 命名空间原理与用法。分享给大家供大家参考,具体如下:

本文实例讲述了PHP命名空间namespace定义及导入use用法。分享给大家供大家参考,具体如下:

本文实例讲述了PHP命名空间定义与用法。分享给大家供大家参考,具体如下:

命名空间一个最明确的目的就是解决重名问题,PHP中不允许两个函数或者类出现相同的名字,否则会产生一个致命的错误。这种情况下只要避免命名重复就可以解决,最常见的一种做法是约定一个前缀,也可以采用命名空间的方式解决

在PHP中,出现同名函数或是同名类是不被允许的。为防止编程人员在项目中定义的类名或函数名出现重复冲突,在PHP5.3中引入了命名空间这一概念。

php的命名空间的样式跟linux的路径很相似。

TestSpace.php

1.命名空间,即将代码划分成不同空间,不同空间的类名相互独立,互不冲突。一个php文件中可以存在多个命名空间,第一个命名空间前不能有任何代码。内容空间声明后的代码便属于这个命名空间,例如:

我们使用文件的路径作为命名空间。

模式一 直接实例该类require;$ms1 = new DemoTestTest1 . "
n";echo DemoTestTest1::test();
2.调用不同空间内类或方法需写明命名空间。例如:'; }}function Person(){ return 'You must stay here!';};namespace Student;class Person{ function __construct(){ echo 'I want to play!
'; }}new Personnew TeacherPerson(); //Teacher空间new StudentPerson(); //Student空间echo TeacherPerson(); //Teacher空间下Person函数

I want to play!Please study!I want to play!You must stay here!

定义命名空间

模式二 use 载入该类

3.在命名空间内引入其他文件不会属于本命名空间,而属于公共空间或是文件中本身定义的命名空间。例:

MVCModelindex.php代码

require;use DemoTestTest1; //导入命名空间DemoTest下的Tese1类$ms2 = new Test1 . "
n";echo Test1::test();

首先定义一个1.php和2.php文件:

使用命名空间MVCApplicationindex.php代码其中use MVCModel;等价于use MVCModel as Model;。所以我们才可以用ModelIndex::test();这种方式调用Model下面的index类。我们在声明使用命名空间的,声明的路径越具体,我们使用起来就越方便。贴上几段代码,感受下~1) use MVCuse MVC;require_once "../Model/index.php";MVCModelIndex::test();//输出test#Model

编辑:美高梅手机游戏网站 本文来源:也可以采用命名空间的方式解决,我们使用文件

关键词: