濮阳杆衣贸易有限公司

主頁 > 知識庫 > PHP命名空間namespace定義及導入use用法詳解

PHP命名空間namespace定義及導入use用法詳解

熱門標簽:四川保險智能外呼系統(tǒng)供應商 長沙做地圖標注公司 地圖標注專員怎么樣 上海做外呼線路的通信公司 遼寧ai電銷機器人價格 寧波外呼營銷系統(tǒng) 福建銀行智能外呼系統(tǒng)價格 房產(chǎn)中介用的是什么外呼系統(tǒng) 電話機器人銷售主要負責什么

本文實例講述了PHP命名空間namespace定義及導入use用法。分享給大家供大家參考,具體如下:

在PHP中,出現(xiàn)同名函數(shù)或是同名類是不被允許的。為防止編程人員在項目中定義的類名或函數(shù)名出現(xiàn)重復沖突,在PHP5.3中引入了命名空間這一概念。

1.命名空間,即將代碼劃分成不同空間,不同空間的類名相互獨立,互不沖突。一個php文件中可以存在多個命名空間,第一個命名空間前不能有任何代碼。內(nèi)容空間聲明后的代碼便屬于這個命名空間,例如:

?php
echo 111;  //由于namespace前有代碼而報錯
namespace Teacher;
class Person{
  function __construct(){
   echo 'Please study!';
  }
}

2.調(diào)用不同空間內(nèi)類或方法需寫明命名空間。例如:

?php
namespace Teacher;
class Person{
  function __construct(){
   echo 'Please study!br/>';
  }
}
function Person(){
  return 'You must stay here!';
};
namespace Student;
class Person{
  function __construct(){
   echo 'I want to play!br/>';
  }
}
new Person();     //本空間(Student空間)
new \Teacher\Person();   //Teacher空間
new \Student\Person();   //Student空間
echo \Teacher\Person();   //Teacher空間下Person函數(shù)

輸出:

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

3.在命名空間內(nèi)引入其他文件不會屬于本命名空間,而屬于公共空間或是文件中本身定義的命名空間。例:

首先定義一個1.php和2.php文件:

?php  //1.php
class Person{
 function __construct(){
   echo 'I am one!br/>';
  }
}

?php
namespace Newer;
require_once './1.php';
new Person();  //報錯,找不到Person;
new \Person();  //輸出 I am tow!;

?php  //2.php
namespace Two
class Person{
 function __construct(){
   echo 'I am tow!br/>';
  }
}

?php
namespace New;
require_once './2.php';
new Person();  //報錯,(當前空間)找不到Person;
new \Person();  //報錯,(公共空間)找不到Person;
new \Two\Person(); //輸出 I am tow!;

4.下面我們來看use的使用方法:(use以后引用可簡寫)

namespace School\Parents;
class Man{
  function __construct(){
   echo 'Listen to teachers!br/>';
  }
}
namespace School\Teacher;
class Person{
  function __construct(){
   echo 'Please study!br/>';
  }
}
namespace School\Student;
class Person{
  function __construct(){
   echo 'I want to play!br/>';
  }
}
new Person();     //輸出I want to play!
new \School\Teacher\Person(); //輸出Please study!
new Teacher\Person();   //報錯
----------
use School\Teacher;
new Teacher\Person();   //輸出Please study!
----------
use School\Teacher as Tc;
new Tc\Person();   //輸出Please study!
----------
use \School\Teacher\Person;
new Person();   //報錯
----------
use \School\Parent\Man;
new Man();   //報錯

更多關于PHP相關內(nèi)容感興趣的讀者可查看本站專題:《php面向對象程序設計入門教程》、《PHP基本語法入門教程》、《PHP運算與運算符用法總結》、《PHP網(wǎng)絡編程技巧總結》、《PHP數(shù)組(Array)操作技巧大全》、《php字符串(string)用法總結》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》

希望本文所述對大家PHP程序設計有所幫助。

您可能感興趣的文章:
  • PHP命名空間(namespace)原理與用法詳解
  • php 命名空間(namespace)原理與用法實例小結
  • PHP命名空間namespace及use的簡單用法分析
  • PHP命名空間namespace的定義方法詳解
  • 詳細分析PHP 命名空間(namespace)

標簽:工商登記 佛山 常德 深圳 澳門 宿遷 宜春 延安

巨人網(wǎng)絡通訊聲明:本文標題《PHP命名空間namespace定義及導入use用法詳解》,本文關鍵詞  PHP,命名,空間,namespace,定義,;如發(fā)現(xiàn)本文內(nèi)容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《PHP命名空間namespace定義及導入use用法詳解》相關的同類信息!
  • 本頁收集關于PHP命名空間namespace定義及導入use用法詳解的相關信息資訊供網(wǎng)民參考!
  • 推薦文章
    桃江县| 读书| 榕江县| 上虞市| 常宁市| 永泰县| 游戏| 邵阳市| 霸州市| 天柱县| 高阳县| 东兰县| 克东县| 壤塘县| 沧州市| 资兴市| 肃北| 葫芦岛市| 浏阳市| 正安县| 周至县| 张家港市| 郎溪县| 驻马店市| 山阳县| 乌兰县| 黔西县| 浪卡子县| 海南省| 无锡市| 青龙| 芦山县| 池州市| 温泉县| 蓝山县| 塔河县| 南岸区| 哈尔滨市| 永福县| 中卫市| 阿拉善盟|