首頁  >  文章  >  後端開發  >  PHP中什麼是命名空間?如何使用命名空間?

PHP中什麼是命名空間?如何使用命名空間?

慕斯
慕斯原創
2021-06-21 11:15:542065瀏覽

上篇文章介紹了《PHP高階語法-什麼是trait?我們如何運用?他有什麼特質? 》,本文繼續介紹PHP中什麼是命名空間?如何使用命名空間?

PHP中什麼是命名空間?如何使用命名空間?

命名空間:

在一個檔案中如果出現了Person類,能不能再定義Person類別。

命名空間就是資料夾。

在不同的命名空間下方就可以有相同的類別名稱

namespace:命名空間

use :使用

首先我們新建一個文件,我們在文件中已經定義了一個person類別了,那我們是否還能在見一個person類別?我們以程式碼為例進行調試,程式碼如下:

<?php
   class person
   {
   }
   
   class person
   {
   }
?>

結果如下:

PHP中什麼是命名空間?如何使用命名空間?

##我們根據結果顯示,程式碼報錯,不能重複定義person類,這是顯而易見的錯誤,我們在同一個文件中是不允許有兩個相同的文件的,但是我們如果想有相同的類名,我們可以引用命名空間的概念。

下面我們開始使用命名空間,我們就剛剛書寫的程式碼來說,我們將第一個person寫在一個命名空間下,我將第二個person寫在另一個命名空間下,這個時候我們就可以同時定義兩個person類別了,命名空間的寫法如下程式碼所示:除此之外,我們需要為命名空間取個名字,因此我們剛剛寫的程式碼都是在我們剛剛定義的命名空間在裡面,執行此程式碼依舊會報錯,因此我們需要給第二個person類別在定義一個命名空間,緊接著我們分別在第一個類別和第二個類別中定義一個方法(function),此時我們定義了兩個類,名字相同,但不是在同一個命名空間下,具體程式碼如下:

<?php
namespace love;
   class Person
   {
     function pome()
     {
       echo &#39;我明白你会来,所以我等<br />&#39;;
     }
   }
   namespace like;
   class Person
   {
     function pome()
     {
     echo &#39;不须耳鬓常厮伴,一笑低头意已倾<br />&#39;;
   }
   }
?>

結果如下:

PHP中什麼是命名空間?如何使用命名空間?

結果顯示是正確的;沒有報錯;

我們想要輸出我們剛剛所寫的程式碼內容,我們需要新建一個person對象,不然我們不知道是輸出那個person類,程式碼如下:

 $ming = new Person();
   $ming ->pome();

結果如下:

PHP中什麼是命名空間?如何使用命名空間?

#注意:我們在建立物件的時候是在那個命名的空間下;

如果我們想要輸出第一個的命名空間裡面的內容,我們需要這樣寫:

$niu = new \love\Person();
  $niu->pome();

結果如下:

PHP中什麼是命名空間?如何使用命名空間?

#1、第一個命名空間的命名:前面不能有任何的程式碼

2、根空間、子空間

根空間

你的hello空間其實就是

\hello .

你的world空間其實就是

\world

#你在world空間下

hello\Dog ===> world\hello\Dog

3、use使用,as使用

use \hello\test\Dog as SmallDog;
use
\world\Dog as BigDog;

推薦學習:

php影片教學

以上是PHP中什麼是命名空間?如何使用命名空間?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn