php中namespace use用法实例分析
本文实例讲述了php中namespaceuse用法。分享给大家供大家参考,具体如下:
现在说这个感觉有点过时了,但是感觉用namespace的人还是不多,估计还是因为不习惯吧。
class把一个一个function组织起来,namespace可以理解成把一个一个class,function等有序的组织起来。个人觉得,namespace的主要优势有
第一,可以更好的管理代码
第二,文件一多,可以避免class,function的重名
第三,代码可读性增强了
1.定义namespace
namespaceuserCenter; //php代码 namespaceuserCenter\register; //php代码 namespaceuserCenter\login{ //php代码 }
命名空间不能嵌套或在同一代码处声明多次(只有最后一次会被识别)。但是,你能在同一个文件中定义多个命名空间化的代码,比较合适的做法是每个文件定义一个命名空间(可以是相同命名空间)。
2.调用namespace
\userCenter\register;//绝对调用 userCenter\login;//相对调用 useuserCenter\register;//引用空间 useuserCenter\registerasreg;//引用空间并加别名
3.实例说明
login.class.php
<?php namespaceuserCenter; functioncheck_username(){ echo"loginOK<br>"; } classlogin{ publicfunctionsave(){ echo"loginhadsaved<br>"; } } ?>
regist.class.php
<?php namespaceuserCenter\regist { functioncheck_username(){ echo"registOK<br>"; } classregist{ publicfunctionsave(){ echo"registhadsaved<br>"; } } } ?>
test.php
<?php require"login.class.php"; require"regist.class.php"; useuserCenter\regist;//使用use调用空间 useuserCenter\registasreg;//as定义别名 echo\userCenter\check_username();//绝对调用 $login=new\userCenter\login(); echo$login->save(); echoregist\check_username();//相对调用 echoreg\check_username();//别名调用 $regist=newreg\regist(); echo$regist->save();
使用use,比绝对调用要好一点,好比给class,function等加了一个前缀,这样看起来就比较清楚了。
希望本文所述对大家PHP程序设计有所帮助。