加入收藏 | 设为首页 | 会员中心 | 我要投稿 汽车网 (https://www.0577qiche.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php中命名空间namespace用法说明

发布时间:2023-09-14 10:52:46 所属栏目:PHP教程 来源:
导读:PHP的命名空间(namespace)是php5.3之后才有的之前学习php所以没有这个东西了,最近用到了php命名空间了,下面我们一起来看看命名空间namespace用法

现在说这个,感觉有点过时了,但是感觉用namespace的人还是不多
PHP的命名空间(namespace)是php5.3之后才有的之前学习php所以没有这个东西了,最近用到了php命名空间了,下面我们一起来看看命名空间namespace用法

现在说这个,感觉有点过时了,但是感觉用namespace的人还是不多,估计还是因为不习惯吧。

class把一个一个function组织起来,namespace可以理解成把一个一个class,function等有序的组织起来。个人觉得,namespace的主要优势有

第一,可以更好的管理代码

第二,文件一多,可以避免class,function的重名

第三,代码可读性增强了

1,定义namespace

namespace userCenter;
//php代码  
namespace userCenter/register;
//php代码    
 
namespace userCenter/login {
 //php代码 

命名空间不能嵌套或在同一代码处声明多次(只有最后一次会被识别),但是,你能在同一个文件中定义多个命名空间化的代码,比较合适的做法是每个文件定义一个命名空间,可以是相同命名空间.

2,调用namespace

/userCenter/register; //绝对调用   
userCenter/login; //相对调用   
use userCenter/register; //引用空间   
use userCenter/register as reg; //引用空间并加别名   
3,实例说明,login.class.php

<?php
 
namespace userCenter; 
 
function check_username(){   
 
 echo "login OK<br>";   
 
}   
 
class login{   
 
 public function save(){   
 
 echo "login had saved<br>";   
 
 }   
 
}   
 
?> 
regist.class.php

<?php   
 
namespace userCenter/regist   
 
{   
 
 function check_username() {   
 
 echo "regist OK<br>";   
 
 } 
 
 class regist{   
 
 public function save(){   
 
 echo "regist had saved<br>";   
 
 }   
 
 }   
 
}   
 
 
?> 
test.php

<?php 
 
require "login.class.php";   
 
require "regist.class.php"; 
 
use userCenter/regist;    //使用use调用空间   
 
use userCenter/regist as reg;  //as定义别名 
 
echo /userCenter/check_username();  //绝对调用  
 
$login = new /userCenter/login();   
 
echo $login->save();   
//Cuoxin.com 
  
echo regist/check_username();    //相对调用   
 
echo reg/check_username();       //别名调用    
 
$regist = new reg/regist();   
 
echo $regist->save(); 
使用use,比绝对调用要好一点,好比给class,function等加了一个前缀,这样看起来就比较清楚了.

 

(编辑:汽车网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章