国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 襄汾县| 理塘县| 内江市| 冷水江市| 铜川市| 贵州省| 龙游县| 石泉县| 安国市| 吉安市| 山丹县| 汾西县| 绥芬河市| 嘉黎县| 措美县| 景德镇市| 浮梁县| 沽源县| 贞丰县| 乌拉特前旗| 泸西县| 封开县| 辽宁省| 古丈县| 化隆| 湖州市| 景泰县| 唐河县| 外汇| 馆陶县| 梅河口市| 逊克县| 乌拉特中旗| 邳州市| 湖口县| 云南省| 黄骅市| 谷城县| 和静县| 墨竹工卡县| 呼图壁县|