Hàm __construct và __destruct trong PHP

Khi học lập trình hướng đối tương (OOP) trong PHP bạn sẽ gặp phải hai hàm __construct__destruct. Vậy làm thế nào để viết và sử dụng chúng? Hãy tham khảo những ví dụ ngay dưới đây.

Hàm __construct trong php là gì?

Hàm __construct là một hàm khởi tạo. PHP sẽ tự động gọi hàm này khi bạn tạo một đối tượng từ một lớp. Lưu ý rằng hàm khởi tạo bắt đầu bằng hai dấu gạch dưới (__).

Ví dụ:

<?php
class Test {
    function vidu() {
        echo 'Tìm hiểu về Construct';
    }
}
$result = new Test();
$result->vidu();

?>

Sau khi chạy sẽ in ra kết quả là dòng chữ

Tìm hiểu về Construct

Tiếp theo mình sẽ sửa lại

<?php
class Test {
    function __construct() {
        echo 'Tìm hiểu về Construct';
    }
}
$result = new Test();
?>

Và kết quả cũng tương tự như trên.

Với ví dụ đầu tiên thì hàm đó là một hàm thông thường. Còn ví dụ tiếp theo là hàm khởi tạo. Có nghĩa là nó sẽ khởi tạo các thuộc tính cho đối tượng của Class đó.

Hàm __destruct trong PHP

Hàm hủy (destructor) đây là hàm được tự động thực thi khi đối tượng bị hủy bỏ.

Hàm này thường dùng để thực hiện các hoạt động dọn dẹp trước khi xóa bỏ đối tượng đã tạo.

PHP sẽ tự động gọi hàm này ở cuối tập lệnh PHP. Lưu ý viết hàm bắt đầu bằng hai dấu gạch dưới (__).

<?php
class DoiTuong {
  public $ten;
  public $tuoi;

  function __construct($ten, $tuoi) {
    $this->ten = $ten;
    $this->tuoi = $tuoi;
  }
  function __destruct() {
    echo "Đây là  {$this->ten} sinh năm {$this->tuoi}";
  }
}

$result = new DoiTuong("Nam",'1990');
?>

Với 2 ví dụ tương ứng với hai hàm construct và hàm destruct trong PHP bạn đã phần nào hiểu được một chút kiến thức về hướng đối tượng rồi đấy. Trong những bài viết tiếp theo mình sẽ đi viết thêm về OOP PHP hãy theo dõi nhé!

Related Posts

Namespace trong PHP

Namespace cho phép các lớp / hàm / hằng cùng tên được sử dụng trong các ngữ cảnh khác nhau mà không có bất kỳ xung đột…

Hàm str_split() trong PHP

Bài viết này chúng ta sẽ đi tìm hiểu về hàm str_split(). Một trong những hàm thường được dùng trong PHP. Vậy cách sử dụng str_split() như…

Tạo chức năng sửa xoá thành viên bằng PHP & MySQL

Với một số trang web để quản lý thành viên (user) dễ dàng trong phần quản trị admin bạn phải khởi tạo chức năng sửa xoá thành…

Hàm str_replace trong PHP

Hàm str_replace trong PHP là gì? Hàm str_replace() trong PHP là một hàm được sử dụng để thay thế tất cả các xuất hiện của một chuỗi…

laravel8-vews-1

Views trong Laravel 8

Trong chuỗi series hướng dẫn học Laravel thì Views cũng quan trọng không kém gì so với Controller hay Model. Vậy chúng ta sẽ làm thế nào…

Validate Form trong PHP

Mặc dù trình duyệt hỗ trợ JavaScript để xác thực người dùng cho website. Tuy nhiên nếu JavaScript bị lỗi hoặc tắt đi thì công việc này…