Computer >> Máy Tính >  >> Lập trình >> PHP

Từ khóa không gian tên PHP và hằng số __NAMESPACE__

Giới thiệu

Trong PHP, từ khóa không gian tên được sử dụng để xác định một không gian tên. Nó cũng được sử dụng như một toán tử để yêu cầu quyền truy cập vào phần tử nhất định trong không gian tên hiện tại. __NAMESPACE__ hằng số trả về tên của không gian tên hiện tại

__NAMESPACE Không đổi

Từ không gian tên đã đặt tên, __NAMESPACE__ trả về tên của nó, đối với không gian tên chung và không gian tên chưa được đặt tên, nó trả về khoảng trống

Ví dụ

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

Đầu ra

Một chuỗi trống được trả về

name of global namespace :

Đối với không gian tên đã đặt tên, tên của nó được trả về

Ví dụ

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

Đầu ra

name of current namespace : myspace

Cấu tạo tên động

__NAMESPACE__ hữu ích để tạo tên động

Ví dụ

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

Đầu ra

Đoạn mã trên hiển thị kết quả sau

hello World

toán tử không gian tên

Từ khóa không gian tên có thể được sử dụng tương đương với self toán tử cho các lớp để yêu cầu rõ ràng một phần tử từ vùng tên hiện tại hoặc vùng tên con.

Ví dụ

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

Đầu ra

Đoạn mã trên hiển thị kết quả sau

hello Myspace

Từ không gian tên toàn cục, toán tử không gian tên đề cập đến hàm / lớp trong không gian tên hiện tại là không gian tên chung

Ví dụ

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

Đầu ra

Đoạn mã trên hiển thị kết quả sau

hello global space