⊗ppOpNsSN 97 of 107 menu

Không gian tên con trong OOP PHP

Bây giờ giả sử chúng ta có một tình huống phức tạp hơn: cho quản trị viên cần tạo hai lớp Page - một lớp chứa dữ liệu trang và lớp thứ hai - chứa phần trình bày dữ liệu đó. Giả sử lớp đầu tiên nằm trong tệp /admin/data/page.php, còn lớp thứ hai - trong tệp /admin/view/page.php.

Trong các bài học trước, chúng ta đã quyết định rằng tất cả các lớp từ thư mục admin sẽ thuộc về không gian tên Admin. Tuy nhiên, bây giờ trong chính không gian đó, chúng ta có xung đột giữa hai lớp. Để giải quyết vấn đề, có thể tạo thêm các không gian tên con. Ví dụ, có thể tạo không gian tên Admin, và trong đó có các không gian tên con DataView. Trong trường hợp này, tên của các không gian tên con này đơn giản được viết bằng dấu gạch chéo ngược - cả khi xác định không gian tên và khi tạo đối tượng của lớp.

Cần lưu ý rằng mức độ lồng nhau của các không gian tên con là không giới hạn (có thể tạo không gian tên con trong không gian tên con và cứ tiếp tục như vậy).

Vậy, hãy hoàn thành ví dụ được mô tả ở trên. Đối với lớp Page từ tệp /admin/data/page.php, chúng ta chỉ định không gian tên Admin\Data:

<?php namespace Admin\Data; class Page { } ?>

Đối với lớp Page từ tệp /admin/view/page.php, chúng ta chỉ định không gian tên Admin\View:

<?php namespace Admin\View; class Page { } ?>

Hãy tạo các đối tượng của lớp chúng ta:

<?php require_once '/admin/data/page.php'; require_once '/admin/view/page.php'; $adminDataPage = new \Admin\Data\Page; $adminViewPage = new \Admin\View\Page; ?>

Giả sử bạn có thư mục modules/cart. Hãy làm sao cho tất cả các lớp từ thư mục này thuộc về không gian tên Modules\Cart.

Giả sử bạn có thư mục modules/shop/cart/. Hãy làm sao cho tất cả các lớp từ thư mục này thuộc về không gian tên Modules\Shop\Cart.

Tiếng Việt
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbek
Chúng tôi sử dụng cookie để vận hành trang web, phân tích và cá nhân hóa. Việc xử lý dữ liệu được thực hiện tuân theo Chính sách bảo mật.
chấp nhận tất cả tùy chỉnh từ chối