Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> PHP

PHP กำหนดเนมสเปซหลายรายการในไฟล์เดียวกัน


แนะนำตัว

สามารถกำหนดเนมสเปซได้มากกว่าหนึ่งรายการในไฟล์เดียวที่มีนามสกุล .php มีสองวิธีที่แตกต่างกันที่กำหนดไว้สำหรับวัตถุประสงค์ ไวยากรณ์ผสมและไวยากรณ์วงเล็บ

เนมสเปซหลายรายการพร้อมไวยากรณ์ผสม

ในตัวอย่างนี้ มีการกำหนดเนมสเปซสองรายการไว้ด้านล่างอีกรายการหนึ่ง ทรัพยากรในเนมสเปซแรกจะพร้อมใช้งานจนกว่าคำจำกัดความที่สองจะเริ่มต้น หากคุณต้องการสร้างเนมสเปซเป็นปัจจุบัน ให้โหลดโดยใช้คีย์เวิร์ด use

ตัวอย่าง

<?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();
?>

ผลลัพธ์

รหัสด้านบนแสดงผลลัพธ์ต่อไปนี้

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

เนมสเปซหลายรายการพร้อมไวยากรณ์วงเล็บ

ในตัวอย่างต่อไปนี้ เนมสเปซสองรายการถูกกำหนดด้วยขอบเขตที่ทำเครื่องหมายด้วยวงเล็บปีกกา

ตัวอย่าง

<?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();
}
?>

ผลลัพธ์

รหัสด้านบนแสดงผลลัพธ์ต่อไปนี้

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

แนะนำให้ใช้ไวยากรณ์วงเล็บสำหรับเนมสเปซหลายรายการบนไวยากรณ์ที่รวมกัน เนมสเปซที่มีวงเล็บและไม่ได้แบร็กเก็ตผสมกันไม่ได้ ยกเว้นคำสั่งเปิด, ไม่มีโค้ด PHP อื่นใดอยู่นอกวงเล็บเนมสเปซ หากคุณต้องผสมเนมสเปซส่วนกลางกับเนมสเปซที่มีชื่อ จะอนุญาตเฉพาะไวยากรณ์ในวงเล็บเท่านั้น