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