PHP Namespaces

PHP Namespaces พูดให้เข้าใจแบบง่าย คือ การจัดกลุ่มคคลาสที่มีการทำงานในลักษณะที่เหมือนหรือใกล้เคียงกัน เพื่อไม่ให้ข้อมูลปะปนกัน

ไวยากรณ์

namespace NAME;

การประกาศใช้ namespace จะต้องประกาศไว้ที่บรรทัดแรกของไฟล์

 

ตัวอย่างที่ 1

<?php
namespace Viewdata;

class MyData{
 public function showData(){
   echo "Hello namespace<br>";
 }
}

class MoreData{
 public function getData(){
   echo "Hello namespace 2";
 }
}

?>

ไฟล์ที่ 1 test_namespace.php

จากไฟล์ที่ 2 มีการประกาศใช้ namespace ชื่อว่า Viewdata จึงทำให้คลาสภายในไฟล์ถูกจัดกลุ่มไว้ใน Viewdata นั่นเอง

 

ตัวอย่างที่ 2 การใช้ namespace (การทำงานสอดคล้องกับไฟล์ที่ 1)

<?php

namespace Viewdata; include "test_namespace.php"; $data = new MyData();
$data->showData();
$data2 = new MoreData(); $data2->getData();
?>

ไฟล์ที่ 2 เรียกใช้ namespace

 สรุปเรื่อง namespace จากไฟล์ที่ 1 และ 2 

ไฟล์ที่ 1 กำหนด namespace และสร้างคลาส

ไฟล์ที่ 2 อ้างอิงถึงไฟล์ที่ 1 และ namespace Viewdata จากนั้นสร้างวัตถุโดยอ้างถึงคลาสที่อยู่ในไฟล์ที่ 1  ซึ่งสามารถเข้าถึงได้เช่นกัน

 

หากคุณพบคำที่สะกดผิด เว้นวรรคไม่ถูกต้อง ฯ โปรดแจ้งให้เราทราบ โดยลากคลุม (highlight) ข้อความนั้น แล้วกด Ctrl + Enter

ไม่สามารถคัดลอกเนื้อหานี้

Spelling error report

The following text will be sent to our editors: