Hướng dẫn why we use destructor in php - tại sao chúng tôi sử dụng hàm hủy trong php

Mục đích chính của một kẻ hủy diệt là gì?

Bạn có thể đưa ra bất kỳ ví dụ nào về những gì tôi có thể muốn chạy khi một đối tượng bị xóa?

Hakre

188K49 Huy hiệu vàng419 Huy hiệu bạc809 Huy hiệu đồng49 gold badges419 silver badges809 bronze badges

Hỏi ngày 11 tháng 4 năm 2010 lúc 19:54Apr 11, 2010 at 19:54

never_had_a_namenever_had_a_namenever_had_a_name

87.7K102 Huy hiệu vàng265 Huy hiệu bạc382 Huy hiệu Đồng102 gold badges265 silver badges382 bronze badges

Nó cho đối tượng một cơ hội để chuẩn bị bị giết. Điều này có thể có nghĩa là dọn dẹp thủ công, sự kiên trì của nhà nước, v.v.

Ví dụ, một mô hình có thể muốn lưu tất cả các thuộc tính hiện tại của nó trở lại cơ sở dữ liệu.

Hoặc, một đối tượng cơ sở dữ liệu có thể muốn đóng ổ cắm mà nó đang sử dụng để liên lạc với máy chủ cơ sở dữ liệu.

Đã trả lời ngày 11 tháng 4 năm 2010 lúc 19:59Apr 11, 2010 at 19:59

2

Vì vậy, bạn có thể biết những gì một nhà xây dựng làm. Nếu một nhà xây dựng thiết lập, một chất phá hủy sẽ làm sạch. Đây là một ví dụ từ trang web PHP:


Đây là liên kết đến tài liệu PHP về chủ đề này.

Đã trả lời ngày 11 tháng 4 năm 2010 lúc 20:00Apr 11, 2010 at 20:00

Byron Sommardahlbyron SommardahlByron Sommardahl

12.6K15 Huy hiệu vàng74 Huy hiệu bạc130 Huy hiệu đồng15 gold badges74 silver badges130 bronze badges

1

Giả sử tôi có một lớp Result là một trình bao bọc [triển khai iterator, trong số các tính năng khác] cho đối tượng mysqli_result. Khi tôi phá hủy một trong các đối tượng Result của mình, tôi muốn chắc chắn gọi phương thức free[] trên đối tượng mysqli_result để đòi lại bộ nhớ mà nó đang sử dụng. Vì vậy, tôi làm điều đó trong bộ phận phá hủy của lớp Result của tôi.

Đã trả lời ngày 11 tháng 4 năm 2010 lúc 20:00Apr 11, 2010 at 20:00

Byron Sommardahlbyron Sommardahlgrossvogel

12.6K15 Huy hiệu vàng74 Huy hiệu bạc130 Huy hiệu đồng1 gold badge25 silver badges36 bronze badges

Giả sử tôi có một lớp Result là một trình bao bọc [triển khai iterator, trong số các tính năng khác] cho đối tượng mysqli_result. Khi tôi phá hủy một trong các đối tượng Result của mình, tôi muốn chắc chắn gọi phương thức free[] trên đối tượng mysqli_result để đòi lại bộ nhớ mà nó đang sử dụng. Vì vậy, tôi làm điều đó trong bộ phận phá hủy của lớp Result của tôi.

Grossvogelgrossvogel

marc_s

6.6541 Huy hiệu vàng25 Huy hiệu bạc36 Huy hiệu đồng172 gold badges1315 silver badges1435 bronze badges

Tài liệu tham khảo cho cuốn sáchNov 25, 2018 at 14:48

Destructor thường sử dụng cho các kết nối DB gần và fclose [] cho kết nối fopen[] trong lớpzloctb

716K172 Huy hiệu vàng1315 Huy hiệu bạc1435 Huy hiệu Đồng6 gold badges67 silver badges85 bronze badges

Constructor có liên quan tự động khi đối tượng được tạo. Destructor có liên quan tự động khi đối tượng bị phá hủy. Được sử dụng để khởi tạo thể hiện của một lớp. Được sử dụng để khử các đối tượng đã tồn tại để giải phóng bộ nhớ cho chỗ ở mới.

Việc sử dụng cơ bản của chất hủy diệt trong OOP là gì?

Destructor là một hàm thành viên được gọi tự động khi đối tượng đi ra khỏi phạm vi hoặc bị phá hủy rõ ràng bởi một cuộc gọi để xóa. Một kẻ phá hủy có cùng tên với lớp, trước một tilde [~].

Tại sao chúng ta sử dụng $ này trong PHP?

$ Đây là một từ khóa dành riêng trong PHP đề cập đến đối tượng gọi. Nó thường là đối tượng mà phương thức thuộc về, nhưng có thể là một đối tượng khác nếu phương thức được gọi là tĩnh từ bối cảnh của một đối tượng thứ cấp.

Thí dụ

Lưu ý rằng chức năng phá hủy bắt đầu với hai dấu gạch dưới [__]!
class Fruit {
  public $name;
  public $color;

& nbsp; hàm __construct [$ name, $ color] {& nbsp; & nbsp; & nbsp; $ this-> name = $ name; & nbsp; & nbsp; & nbsp; $ this-> color = $ color; & nbsp; } & nbsp; hàm __destruct [] {& nbsp; & nbsp; & nbsp; echo "quả là {$ this-> name} và màu là {$ this-> color}."; & nbsp; }}
    $this->name = $name;
  }
  function __destruct[] {
    echo "The fruit is {$this->name}.";
  }
}

$ apple = new Fruit ["Apple"]; ?>
?>

Hãy tự mình thử »

Một vi dụ khac:

Thí dụ

Lưu ý rằng chức năng phá hủy bắt đầu với hai dấu gạch dưới [__]!
class Fruit {
  public $name;
  public $color;

& nbsp; hàm __construct [$ name, $ color] {& nbsp; & nbsp; & nbsp; $ this-> name = $ name; & nbsp; & nbsp; & nbsp; $ this-> color = $ color; & nbsp; } & nbsp; hàm __destruct [] {& nbsp; & nbsp; & nbsp; echo "quả là {$ this-> name} và màu là {$ this-> color}."; & nbsp; }}
    $this->name = $name;
    $this->color = $color;
  }
  function __destruct[] {
    echo "The fruit is {$this->name} and the color is {$this->color}.";
  }
}

$ apple = new Fruit ["Apple", "Red"]; ?>
?>

Hãy tự mình thử »

Một vi dụ khac: As constructors and destructors helps reducing the amount of code, they are very useful!



Mục đích của chất hủy diệt trong PHP là gì?

PHP - Hàm __destruct Một bộ hủy được gọi khi đối tượng bị phá hủy hoặc tập lệnh bị dừng hoặc thoát. Nếu bạn tạo hàm __destruct [], PHP sẽ tự động gọi hàm này ở cuối tập lệnh. Lưu ý rằng chức năng phá hủy bắt đầu với hai dấu gạch dưới [__]!when the object is destructed or the script is stopped or exited. If you create a __destruct[] function, PHP will automatically call this function at the end of the script. Notice that the destruct function starts with two underscores [__]!

Việc sử dụng các hàm tạo và hàm hủy trong PHP là gì?

Constructor có liên quan tự động khi đối tượng được tạo.Destructor có liên quan tự động khi đối tượng bị phá hủy.Được sử dụng để khởi tạo thể hiện của một lớp. Được sử dụng để khử các đối tượng đã tồn tại để giải phóng bộ nhớ cho chỗ ở mới.Used to initialize the instance of a class. Used to de-initialize objects already existing to free up memory for new accommodation.

Việc sử dụng cơ bản của chất hủy diệt trong OOP là gì?

Destructor là một hàm thành viên được gọi tự động khi đối tượng đi ra khỏi phạm vi hoặc bị phá hủy rõ ràng bởi một cuộc gọi để xóa.Một kẻ phá hủy có cùng tên với lớp, trước một tilde [~].invoked automatically when the object goes out of scope or is explicitly destroyed by a call to delete . A destructor has the same name as the class, preceded by a tilde [ ~ ].

Tại sao chúng ta sử dụng $ này trong PHP?

$ Đây là một từ khóa dành riêng trong PHP đề cập đến đối tượng gọi.Nó thường là đối tượng mà phương thức thuộc về, nhưng có thể là một đối tượng khác nếu phương thức được gọi là tĩnh từ bối cảnh của một đối tượng thứ cấp.refers to the calling object. It is usually the object to which the method belongs, but possibly another object if the method is called statically from the context of a secondary object.

Bài Viết Liên Quan

Chủ Đề