⊗ppOpMgGNE 90 of 107 menu

การอ่านคุณสมบัติที่ไม่มีการประกาศใน OOP ใน PHP

ในตัวอย่างที่นำเสนอในบทเรียนที่ผ่านมา เราใช้คุณสมบัติเวทมนตร์ของเมธอด __get เพื่อดักจับการเข้าถึง คุณสมบัติแบบ private ในความเป็นจริงเมธอดนี้ ยังมีประโยชน์สำหรับการดักจับ การเข้าถึงคุณสมบัติที่ไม่ได้ประกาศไว้ด้วย

มาดูตัวอย่างการใช้งานกัน สมมติว่า เรามีคลาส User ที่มีชื่อและ นามสกุล ซึ่งเป็นคุณสมบัติแบบ public

<?php class User { public $surn; public $name; } ?>

ลองทำให้วัตถุของคลาส มีพฤติกรรมเหมือนกับว่ามันมีคุณสมบัติ full ซึ่งจะคืนค่าชื่อและนามสกุลของผู้ใช้ มาใช้เมธอดเวทมนตร์ __get ของเราสำหรับการนี้:

<?php class User { public $surname; public $name; public $patronymic; public function __get($property) { if ($property == 'full') { return $this->surn . ' ' . $this->name; } } } ?>

มาทดสอบกัน:

<?php $user = new User; $user->surn = 'john'; $user->name = 'smit'; echo $user->full; // จะแสดง 'john smit' ?>

สร้างคลาส Date ด้วยคุณสมบัติแบบ public year, month และ day ใช้คุณสมบัติเวทมนตร์สร้างคุณสมบัติ weekDay ซึ่งจะคืนค่าวันในสัปดาห์ที่สอดคล้องกับ วันที่นั้น

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