1. โหมดซิงเกิลตันช่วยลดการสิ้นเปลืองทรัพยากรและทำให้แน่ใจว่ามีออบเจ็กต์อินสแตนซ์เดียวเท่านั้นในสภาพแวดล้อมทั้งหมด เหมาะอย่างยิ่งสำหรับการเขียนคลาสการเชื่อมต่อทรัพยากร
2. โหมดซิงเกิลตันหมายถึงการสร้างทรัพยากรเพียงแหล่งเดียว (ออบเจ็กต์ ลิงก์ฐานข้อมูล ฯลฯ) เพื่อป้องกันไม่ให้อินสแตนซ์ภายนอกตัดสินว่ามีการส่งคืนหรือส่งคืนออบเจ็กต์หลังจากการสร้างแล้ว
ตัวอย่าง
// โหมดซิงเกิลตัน (มนต์: สามส่วนตัวและหนึ่งสาธารณะ) คลาสซิงเกิลตัน{ // วิธีการก่อสร้างแบบส่วนตัว ห้ามมิให้สร้างอินสแตนซ์ภายนอกของฟังก์ชันส่วนตัวของวัตถุ __construct(){} //ส่วนตัว __clone เพื่อป้องกันไม่ให้วัตถุถูกโคลน ฟังก์ชันส่วนตัว __clone(){} //วัตถุอินสแตนซ์ส่วนตัวภายในส่วนตัว $instance คงที่ = null; // วิธีการอินสแตนซ์แบบคงที่สาธารณะ ฟังก์ชันแบบคงที่สาธารณะ getInstance(){ ถ้า(ตนเอง::$อินสแตนซ์ == null){ //วัตถุอินสแตนซ์ภายใน self::$instance = new self(); - กลับตัวเอง::$อินสแตนซ์; - -
ด้านบนนี้เป็นฟังก์ชั่นของโหมด PHP singleton ฉันหวังว่ามันจะเป็นประโยชน์กับทุกคน คู่มือการเรียนรู้ PHP เพิ่มเติม: เครือข่ายซอร์สโค้ด