PHP 名稱空間關鍵字和 __NAMESPACE__ 常量


介紹

在 PHP 中,名稱空間關鍵字用來定義名稱空間。它還用作獲得當前名稱空間中的某些元素訪問權的運算子。 __NAMESPACE__ 常量返回當前名稱空間的名稱

__NAMESPACE__ 常量

從已命名名稱空間中,__NAMESPACE__ 返回其名稱,而從全域性和未命名名稱空間中,它返回空字串

範例

 即時演示

#test1.php
<?php
echo "name of global namespace : " . __NAMESPACE__ . "
"; ?>

輸出

返回一個空字串

name of global namespace :

從已命名名稱空間中,返回其名稱

範例

 即時演示

<?php
namespace myspace;
echo "name of current namespace : " . __NAMESPACE__ . "
"; ?>

輸出

name of current namespace : myspace

動態名稱構造

__NAMESPACE__ 常量對於動態構造名稱非常有用

範例

 即時演示

<?php
namespace MyProject;
class myclass {
   function hello(){echo "hello world";}
};
$cls="myclass";
function get($cls){
   $a = __NAMESPACE__ . '\' . $cls;
   return new $a;
}
get($cls)->hello();
?>

輸出

上面的程式碼顯示了以下輸出

hello World

名稱空間運算子

名稱空間關鍵字可用作 self 對類的運算子的等價物,以從當前名稱空間或子名稱空間中明確請求元素。

範例

 即時演示

<?php
namespace Myspace;
class myclass {
   function hello(){echo "hello Myspace";}
}
$a = new namespace\myclass();
$a->hello();
?>

輸出

上面的程式碼顯示了以下輸出

hello Myspace

從全域性名稱空間中,名稱空間運算子引用當前名稱空間中的函式/類,即全域性名稱空間

範例

 即時演示

<?php
class myclass {
   function hello(){echo "hello global space";}
}
$a = new namespace\myclass();
$a->hello();
?>

輸出

上面的程式碼顯示了以下輸出

hello global space

更新時間:18 年 9 月 2020 日

342 次瀏覽

開啟你的 職業生涯

完成課程後獲得認證

開始學習
廣告
© . All rights reserved.