Hướng dẫn dùng namespace meaning trong PHP
Trong bài này, chúng ta sẽ tìm hiểu về namespace trong PHP. Để học tốt bài này, các bạn cần đọc lại bài Cài đặt môi trường lập trình Web PHP với XAMPP để biết cách chạy ứng dụng web PHP với XAMPP. Show Namespace trong PHP giúp gom nhóm các lớp (class), hằng (constant), hàm (function) cùng thực hiện một nhiệm vụ với nhau. Việc này giúp tổ chức code tốt hơn và tránh nhầm lẫn giữa các lớp, hằng, hàm cùng tên nhưng chức năng khác nhau. Ví dụ, một chương trình PHP lớn gồm nhiều file. Các file này chứa các lớp (class) thực hiện những chức năng khác nhau. Nhưng chúng có thể có những lớp (class) cùng tên với nhau. Có trường hợp, chúng ta cần include hoặc require nhiều file để thực hiện một chức năng nào đó. Nếu chúng ta gọi một lớp (class) cùng tên, chương trình sẽ không biết chúng ta gọi lớp nào trong file nào. Cần khai báo namespace cho các lớp để giải quyết trường hợp này. 2. Khai báo một namespace trong PHPNamespace được khai báo ở dòng đầu tiên sau cú pháp
Lưu ý: Phải khai báo namespace ở dòng đầu tiên cú pháp
Hằng (constant), lớp (class), hàm (function) được khai báo trong file
3. Sử dụng namespace trong PHPĐể sử dụng các lớp từ một namespace, chúng ta cần chỉ định rõ namespace đó. Ví dụ:
Kết quả
Chúng ta có thể sử dụng bí danh (alias) để giúp viết ngắn gọn hơn tên namespace.
Tham khảo: PHP Namespaces
PHP programming web programming Từ PHP 5.3 namespaces được giới thiệu để đóng gói các item và làm cho script dễ quản lý hơn. Khi một trang web trở nên lớn hơn, việc giữ tất cả các file class trong cùng một thư mục sẽ khó hơn. Ngoài ra, chúng ta phải sử dụng tên rất dài cho các file và class, Đó là một trở ngại trong quản lý mã nguồn. Namespaces được giới thiệu để ngăn chặn vấn đề này. Chúng ta hãy xem nó hoạt động như thế nào! Giả sử chúng ta có cấu trúc file như sau: class animals Dog.php Cat.php Goat.php birds Owl.php Peacock.php pets Dog.php Cat.php MainClass1.php MainClass2.php MainClass3.php Trong cấu trúc thư mục trên bạn thấy có file Dog.php và Cat.php được lưu trong các thư mục khác nhau, chúng là các class khác nhau hoàn toàn nhưng lại trùng tên,vậy làm sao để PHP biết bạn đang muốn gọi class nào khi thực hiện autoload, do đó chúng ta sử dụng thêm namespace để PHP có thể hiểu 2 file Dog và Cat trên là 2 file khác nhau hoàn toàn.
|