Hàm tạo và hàm hủy trong php là gì với ví dụ?

Hàm tạo và hàm hủy là một tính năng của Lập trình hướng đối tượng [OOP]. Và khái niệm này được triển khai trong PHP5. Bây giờ trong bài viết này, tôi giải thích riêng về "hàm tạo" và "hàm hủy"

Người xây dựng

Hàm tạo là một tính năng "OOP". PHP 5 có khả năng OOP và trao quyền cho các nhà phát triển khai báo một phương thức hàm tạo cho các lớp. Trước tiên tôi sẽ giải thích hàm tạo là gì. Câu trả lời là "Hàm tạo là một loại phương thức đặc biệt được gọi tự động khi bạn tạo một phiên bản mới của lớp". Hàm tạo OOP có một số ưu điểm, đó là

  • Các nhà xây dựng có thể chấp nhận các tham số, được gán cho các trường đối tượng cụ thể tại thời điểm tạo
  • Các hàm tạo có thể gọi các phương thức của lớp hoặc các hàm khác
  • Các hàm tạo của lớp có thể gọi các hàm tạo khác, kể cả các hàm tạo từ lớp cha.
     

Thí dụ

Trong đoạn mã sau, lớp cha [hay nói cách khác là Myclass] có một hàm tạo. Nó sẽ không được gọi ngầm vì lớp con của nó [hay nói cách khác là Lớp cơ sở] định nghĩa một hàm tạo [trong PHP, hàm tạo của lớp cha không được gọi ngầm nếu lớp con định nghĩa một hàm tạo]. Bất cứ khi nào một đối tượng của lớp con được tạo. Hàm tạo của lớp con sẽ được gọi tự động

class Myclass
{
function __construct[]
{
print .
";
}
}

class Lớp cơ sở mở rộng Myclass
{
function __construct[]
{
parent::__construct[];
in " Hàm tạo lớp con\n";
}

$obj = Myclass mới[];

$obj = lớp cơ sở mới[];

?>

Đầu ra

Kẻ hủy diệt

Hàm hủy là một tính năng khác của "OOP". Khái niệm hàm hủy đã được giới thiệu trong PHP5 và về mặt khái niệm nó tương tự như khái niệm của các ngôn ngữ hướng đối tượng khác. Phương thức hàm hủy sẽ được gọi ngay khi không có tham chiếu nào khác đến một đối tượng cụ thể hoặc khi đối tượng đã bị hủy một cách rõ ràng

Hàm tạo và hàm hủy là các hàm đặc biệt được gọi tự động khi một đối tượng được tạo và hủy. Hàm tạo là hữu ích nhất trong cả hai, đặc biệt là vì nó cho phép bạn gửi các tham số khi tạo một đối tượng mới, sau đó có thể được sử dụng để khởi tạo các biến trên đối tượng. Đây là một ví dụ về một lớp với một hàm tạo đơn giản

class Animal
{
    public $name = "No-name animal";
    
    public function __construct[]
    {
        echo "I'm alive!";        
    }
}

Như bạn có thể thấy, hàm tạo trông giống như một hàm thông thường, ngoại trừ thực tế là nó bắt đầu bằng hai dấu gạch dưới. Trong PHP, các hàm có hai ký tự gạch dưới trước tên thường cho bạn biết rằng đó được gọi là hàm ma thuật, một hàm có mục đích cụ thể và chức năng bổ sung, so với các hàm thông thường. Vì vậy, một hàm có tên chính xác là "__construct", là hàm tạo của lớp và sẽ được gọi tự động khi đối tượng được tạo. Hãy thử làm điều đó

$animal = Động vật mới[];

Chỉ với dòng mã đó, đối tượng sẽ được tạo, hàm tạo được gọi và các dòng mã trong đó được thực thi, điều này sẽ khiến chúng tôi "Tôi còn sống. " dòng được xuất ra. Tuy nhiên, như đã đề cập trước đây, một lợi thế lớn của hàm tạo là khả năng truyền các tham số có thể được sử dụng để khởi tạo các biến thành viên. Hãy thử làm điều đó

Khai báo hàm tạo với các tham số cũng giống như khai báo một hàm thông thường và truyền [các] tham số cũng giống như gọi một hàm thông thường, nhưng tất nhiên với từ khóa "mới" mà chúng tôi đã giới thiệu trước đó. Một hàm tạo có thể có bao nhiêu tham số tùy thích

Kẻ hủy diệt

Hàm hủy được gọi khi đối tượng bị hủy. Trong một số ngôn ngữ lập trình, bạn phải loại bỏ các đối tượng bạn đã tạo theo cách thủ công, nhưng trong PHP, nó được xử lý bởi Trình thu gom rác, theo dõi các đối tượng của bạn và tự động hủy chúng khi không còn cần thiết. Hãy xem ví dụ sau, đây là phiên bản mở rộng của ví dụ trước của chúng tôi

Chủ Đề