การอ้างอิงถึงเมธอดภายในคลาสใน OOP ใน PHP
เมธอดหนึ่งสามารถถูกเรียกใช้ภายใน
อีกเมธอดหนึ่งได้ผ่าน $this มาดู
ตัวอย่างกัน สมมติว่าเรามีคลาสผู้ใช้และเมธอด
ที่คืนค่าคุณสมบัติ:
<?php
class User {
public $name;
public function show() {
return $this->name;
}
}
?>
สมมติว่าเรามีเมธอด cape
ที่แปลงตัวอักษรตัวแรกของสตริง
เป็นตัวพิมพ์ใหญ่:
<?php
class User {
public $name;
public function show() {
return $this->name;
}
public function cape($str) {
return mb_strtoupper(mb_substr($str, 0, 1)) . mb_substr($str, 1);
}
}
?>
ลองใช้เมธอด cape
ภายในเมธอด show:
<?php
class User {
public $name;
public function show() {
return $this->cape($this->name);
}
public function cape($str) {
return mb_strtoupper(mb_substr($str, 0, 1)) . mb_substr($str, 1);
}
}
?>
สร้างคลาส Student
ที่มีคุณสมบัติ name
และ surn
สร้างเมธอดตัวช่วย ที่รับอักขระตัวแรก ของสตริงและทำให้เป็น ตัวพิมพ์ใหญ่
สร้างเมธอดที่จะคืนค่า อักษรย่อของนักเรียน นั่นคือ ตัวอักษรตัวแรกของชื่อและนามสกุลของเขา