2011-01-23 27 views
9

tôi RTM nhưng tôi không thể tìm thấy bất kỳ câu trả lời tốt đẹp để câu hỏi này, vì vậy đây là nó:set_error_handler với tĩnh-method callback

  • Tôi có thể gọi một phương thức tĩnh như một xử lý lỗi (ví dụ: set_error_handler('error::function'))?
  • Được khuyến nghị?

Trả lời

16

set_error_handler dự kiến ​​giá trị là pseudo-type callback. Và trong các ví dụ ở đó bạn có thể thấy rằng có hai cách để chỉ định một phương pháp tĩnh:

set_error_handler(array('Class', 'method')); 

// since PHP 5.2.3 
set_error_handler('Class::method'); 
+0

Điều gì sẽ xảy ra nếu có chức năng tự động tải cho lớp học và lớp học trong lớp học? PHP có tự động tải nó không? – Shoe

+0

@Charlie Pigarelli: Tôi không biết. Tại sao bạn không thử nó? – Gumbo

+0

Lưu ý rằng việc sử dụng phương thức self :: không hoạt động. Tên lớp phải được chỉ định. – payling