国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > PHP > 正文

php中命名空間namespace用法介紹

2024-05-04 21:49:52
字體:
供稿:網(wǎng)友

PHP的命名空間(namespace)是php5.3之后才有的之前學(xué)習(xí)php所以沒有這個東西了,最近用到了php命名空間了,下面我們一起來看看命名空間namespace用法

現(xiàn)在說這個,感覺有點過時了,但是感覺用namespace的人還是不多,估計還是因為不習(xí)慣吧。

class把一個一個function組織起來,namespace可以理解成把一個一個class,function等有序的組織起來。個人覺得,namespace的主要優(yōu)勢有

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

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

第三,代碼可讀性增強了

1,定義namespace

  1. namespace userCenter;
  2. //php代碼  
  3. namespace userCenter/register;
  4. //php代碼    
  5.  
  6. namespace userCenter/login {
  7.  //php代碼 

命名空間不能嵌套或在同一代碼處聲明多次(只有最后一次會被識別),但是,你能在同一個文件中定義多個命名空間化的代碼,比較合適的做法是每個文件定義一個命名空間,可以是相同命名空間.

2,調(diào)用namespace

  1. /userCenter/register; //絕對調(diào)用   
  2. userCenter/login; //相對調(diào)用   
  3. use userCenter/register; //引用空間   
  4. use userCenter/register as reg; //引用空間并加別名   

3,實例說明,login.class.php

  1. <?php
  2.  
  3. namespace userCenter; 
  4.  
  5. function check_username(){   
  6.  
  7.  echo "login OK<br>";   
  8.  
  9. }   
  10.  
  11. class login{   
  12.  
  13.  public function save(){   
  14.  
  15.  echo "login had saved<br>";   
  16.  
  17.  }   
  18.  
  19. }   
  20.  
  21. ?> 

regist.class.php

  1. <?php   
  2.  
  3. namespace userCenter/regist   
  4.  
  5. {   
  6.  
  7.  function check_username() {   
  8.  
  9.  echo "regist OK<br>";   
  10.  
  11.  } 
  12.  
  13.  class regist{   
  14.  
  15.  public function save(){   
  16.  
  17.  echo "regist had saved<br>";   
  18.  
  19.  }   
  20.  
  21.  }   
  22.  
  23. }   
  24.  
  25.     
  26.  
  27. ?> 

test.php

  1. <?php 
  2.  
  3. require "login.class.php";   
  4.  
  5. require "regist.class.php"; 
  6.  
  7. use userCenter/regist;    //使用use調(diào)用空間   
  8.  
  9. use userCenter/regist as reg;  //as定義別名 
  10.  
  11. echo /userCenter/check_username();  //絕對調(diào)用  
  12.  
  13. $login = new /userCenter/login();   
  14.  
  15. echo $login->save();   
  16. //Vevb.com 
  17.   
  18. echo regist/check_username();    //相對調(diào)用   
  19.  
  20. echo reg/check_username();       //別名調(diào)用    
  21.  
  22. $regist = new reg/regist();   
  23.  
  24. echo $regist->save(); 

使用use,比絕對調(diào)用要好一點,好比給class,function等加了一個前綴,這樣看起來就比較清楚了.

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 祁东县| 呼伦贝尔市| 万安县| 阿图什市| 萍乡市| 青州市| 长子县| 怀化市| 德清县| 南开区| 松阳县| 云南省| 八宿县| 磐安县| 汤阴县| 托克逊县| 富锦市| 辽源市| 慈溪市| 寻甸| 科尔| 长武县| 福贡县| 邵东县| 新巴尔虎右旗| 罗田县| 兴业县| 伊宁市| 抚顺市| 南澳县| 建始县| 尼勒克县| 通化市| 静安区| 天镇县| 鲁山县| 玛纳斯县| 台州市| 弥勒县| 宝山区| 武夷山市|