Hướng dẫn dùng language magic trong PHP
Magic methods là gì.?Magic methods là các phương thức đặc biệt được tạo ra nhằm giải quyết các vấn đề về sự kiện trong chương trình (cụ thể là với class), và đối với PHP cũng thế.Phương thức magic là những phương thức được đặt tên với kí tự đặc biệt, bắt đầu với dấu 2 gạch dưới. Show Ưu nhược điểm của magic methods.
Ưu điểm
Nhược điểm Một magic methods có tốc độ chậm hơn các phương thức bình thường. Một số magic method hay sử dụng trong PHP
1. Construct và Destruct Trong PHP, Magic Method phổ biến nhất chính là construct() method. Hàm construct(), cho phép người dùng khởi tạo các thuộc tính của một đối tượng khi tạo đối tượng.. Hàm khởi tạo có thẻ có tham số hoặc không có tham số, có thể có giá trị trả về hoặc không. Ở một hàm bình thường khác bạn cũng có thể gọi lại hàm khởi tạo được và hàm khởi tạo cũng có thể gọi một hàm bình thường khác. Ví dụ:
Khởi tạo object không tham số
Khởi tạo object có tham số
Ngược lại với hàm contruct là hàm destruct. Một trình hủy được gọi khi đối tượng bị hủy hoặc tập lệnh bị dừng hoặc thoát. Khi gọi hàm destruct(), PHP tự động gọi hàm này ở cuối tập lệnh. Ví dụ:
Kết quả sẽ là
**2. Phương thức call() ** Phương thức call() sẽ được gọi khi bạn gọi đến một phương thức (không phải static) chưa được định nghĩa trong lớp của đối tượng
Có hai tham số truyền vào như sau $function_name là tên của phương thức đang gọi $arguments là danh sách các tham số truyền vào của phương thức đó Ví dụ:
Kết quả:
3. callstatic():
Ví dụ :
Kết quả:
4. set(): -Phương thức set() sẽ tự động được gọi khi chúng ta thiết lập giá trị cho một thuộc tính không được phép truy cập từ bên ngoài, hoặc không tồn tại. Ví dụ:
Ta thấy 2 thuộc tính $name, $age đều có mức truy cập là private
Note : Nếu chúng ta cố gắng thiết lập một property không thể access, set() method sẽ được kích hoạt. Phương thức này lấy property mà chúng ta đã cố gắng truy cập và các giá trị mà ta đang cố để thiết lập như là hai đối số. 6. get() -Phương thức get() sẽ tự động được gọi khi chúng ta lấy ra giá trị của các thuộc tính trong đối mà chúng ta không được phép truy cập nó từ bên ngoài hoặc không tồn tại.
Phương pháp get() chấp nhận tên của các property mà ta đang tìm kiếm như một tham số. Chúng ta không cần phải gọi phương thức get() vì PHP sẽ tự động gọi chúng khi ta cố gắng truy cập vào một property mà không phải public. Kết luậnQua bài này hi vọng các bạn có thể hiểu được khái niệm về và một số magic function hay sử dụng trong PHP. Tài liệu tham khảohttps://www.tutorialdocs.com/article/16-php-magic-methods.html https://www.php.net/manual/en/language.oop5.magic.php |