Làm việc với phương thức PHP (phần 3)

Truy cập đặc tính object từ các methods

Mặc dù bạn có thể truyền giá trị tới một method sử dụng tham số và giá trị trả về, sức mạnh của OOP được hiện
thực hóa khi các object có khả năng hoạt động tự thân. Điều này có nghĩa là các methods của object làm việc chủ
yếu với các đặc tính của object, hơn là dựa vào dữ liệu bên ngoài để làm công việc của nó.
Để truy cập đặc tính của object từ một method của cùng object, bạn sử dụng một biến đặc biệt tên là $this như sau:

$this->property;

Ví dụ:

class myClass{
public $greeting=”Hello world”;
public function hello(){
echo $this->greeting;
}
}
$obj=new myClass;
$obj->hello();//displays Hello world

Trong ví dụ này, một class tên là myClass được tạo ra với một đặc tính duy nhất là $greeting và một phương thức
hello(). Method sử dụng echo để hiển thị giá trị của đặc tính $greeting, được truy cập thông qua $this->greeting.
Sau định nghĩa class, đoạn script tạo một object tên là $obj từ class trên và gọi method của object là hello()
để hiển thị lời chào đón.
Chú ý là $this trong phương thức hello() chỉ tới một object cụ thể mà phương thức hello() của nó được gọi – trong
trường hợp này là object lưu trong $obj.
Nếu object khác $obj2 được tạo từ cùng class và phương thức hello () được gọi, $this sẽ chỉ tới $obj2 thay vào đó.
Và vì vậy, $this->greeting sẽ chỉ tới đặc tính $greeting của $obj2. Nhân tiện, bạn cũng có thể sử dụng this để gọi
method của object từ một method khác trong cùng object:

class myClass{
public function getGreeting(){
return “Hello world”;
}
public function hello(){
echo this->getGreeting();
}
}
$obj=new myClass;
$obj->hello();//displays Hello world

Ở đây method hello() sử dụng this->getGreeting() để gọi method getGreeting() ở trong cùng object, sau đó hiển thị
lời chào đón trả về sử dụng echo.

Chia sẻ

Leave a Reply

Your email address will not be published. Required fields are marked *