⊗ppOpNsSN 97 of 107 menu

เนมสเปซย่อยในการเขียนโปรแกรมเชิงวัตถุใน PHP

สมมติว่าตอนนี้เรามีสถานการณ์ที่ซับซ้อนมากขึ้น: สำหรับผู้ดูแลระบบจำเป็นต้องสร้างคลาส Page ขึ้นมาสองคลาส - อันแรกสำหรับข้อมูลของเพจ และอันที่สอง - สำหรับการแสดงผล ข้อมูลเหล่านั้น สมมติว่าคลาสแรกอยู่ใน ไฟล์ /admin/data/page.php และคลาสที่สอง - ในไฟล์ /admin/view/page.php

ในบทเรียนก่อนหน้านี้เราได้ตกลงกันแล้วว่าคลาสทั้งหมดจากโฟลเดอร์ admin จะอยู่ในเนมสเปซ ชื่อ Admin อย่างไรก็ตาม ตอนนี้ใน เนมสเปซเดียวกันนี้เรามีความขัดแย้งระหว่างสองคลาส เพื่อแก้ปัญหาสามารถสร้างเนมสเปซย่อย เพิ่มเติมได้ ตัวอย่างเช่น สามารถสร้าง เนมสเปซชื่อ Admin และภายในมีเนมสเปซย่อย Data และ View ในกรณีนี้ ชื่อของเนมสเปซย่อยเหล่านี้จะถูกเขียน ด้วยเครื่องหมายแบ็กสแลช - ทั้งตอนกำหนดเนมสเปซ และตอนสร้างออบเจ็กต์ของคลาส

ควรชี้แจงตรงนี้ว่าจำนวนระดับของการซ้อนกันของ เนมสเปซย่อยนั้นไม่จำกัด (สามารถสร้าง เนมสเปซย่อยภายในเนมสเปซย่อยและ ซ้อนต่อไปเรื่อยๆ ได้)

เอาล่ะ มาลองทำตัวอย่างที่กล่าวมาข้างต้น ให้เสร็จกัน สำหรับคลาส Page จากไฟล์ /admin/data/page.php ให้ระบุเนมสเปซชื่อ Admin\Data:

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

สำหรับคลาส Page จากไฟล์ /admin/view/page.php ให้ระบุเนมสเปซชื่อ Admin\View:

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

มาสร้างออบเจ็กต์ของคลาสของเรากัน:

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

สมมติว่าคุณมีโฟลเดอร์ modules/cart ทำให้คลาสทั้งหมดจากโฟลเดอร์นี้ อยู่ในเนมสเปซชื่อ Modules\Cart

สมมติว่าคุณมีโฟลเดอร์ modules/shop/cart/ ทำให้คลาสทั้งหมดจากโฟลเดอร์นี้ อยู่ในเนมสเปซชื่อ Modules\Shop\Cart

ไทย
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ʻzbekTiếng Việt
เราใช้คุกกี้สำหรับการทำงานของเว็บไซต์ การวิเคราะห์ และการปรับเนื้อหาให้เหมาะสมส่วนบุคคล การประมวลผลข้อมูลเกิดขึ้นตาม นโยบายความเป็นส่วนตัว.
ยอมรับทั้งหมด ปรับแต่ง ปฏิเสธ