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

PHP xác định nhiều không gian tên trong cùng một tệp

Giới thiệu

Có thể xác định nhiều không gian tên trong một tệp có phần mở rộng .php. Có hai phương pháp khác nhau được quy định cho mục đích. cú pháp kết hợp và cú pháp trong ngoặc

Nhiều không gian tên với cú pháp kết hợp

Trong ví dụ này, hai không gian tên được định nghĩa bên dưới một không gian tên khác. Các tài nguyên trong không gian tên đầu tiên có sẵn cho đến khi định nghĩa thứ hai bắt đầu. Nếu bạn muốn tạo một không gian tên như hiện tại, hãy tải nó bằng từ khóa use.

Ví dụ

<?php
namespace myspace1;
function hello() {
   echo "Hello World from space1\n";
}
echo "myspace1 : ";
hello();
namespace myspace\space2;
function hello(){
   echo "Hello World from space2\n";
}
echo "myspace2 : ";
hello();
use myspace1;
hello();
use myspace2;
hello();
?>

Đầu ra

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

myspace1 : Hello World from space1
myspace2 : Hello World from space2
Hello World from space2
Hello World from space2

Nhiều không gian tên với Cú pháp được đặt trong ngoặc vuông

Trong ví dụ sau, hai không gian tên được xác định với phạm vi của chúng được đánh dấu bằng dấu ngoặc nhọn

Ví dụ

<?php
namespace myspace1{
   function hello() {
      echo "Hello World from space1\n";
   }
   echo "myspace1 : ";
   hello();
}
namespace myspace\space2{
function hello(){
   echo "Hello World from space2\n";
}
echo "myspace2 : ";
hello();
}
?>

Đầu ra

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

myspace1 : Hello World from space1
myspace2 : Hello World from space2

Cú pháp trong ngoặc cho nhiều không gian tên được khuyến nghị hơn cú pháp kết hợp. Không thể trộn lẫn các vùng tên trong ngoặc và không được đặt trong ngoặc vuông. Ngoại trừ câu lệnh khai báo mở, không có mã PHP nào khác có thể tồn tại bên ngoài dấu ngoặc không gian tên. Nếu bạn phải kết hợp không gian tên chung với không gian tên đã đặt tên, thì chỉ cho phép cú pháp trong ngoặc đơn.