Tôi muốn sử dụng foreachvòng lặp với một biến, nhưng biến này có thể có nhiều kiểu khác nhau, NULLchẳng hạn.
Vì vậy, trước khi foreachtôi kiểm tra nó:
if(is_array($var)){
foreach($var as ...
Nhưng tôi nhận ra rằng nó cũng có thể là một lớp thực thi Iteratorgiao diện. Có lẽ tôi mù tịt nhưng làm thế nào để kiểm tra xem lớp thực hiện giao diện? Có một cái gì đó giống như is_ahàm hoặc inheritstoán tử? Tôi tìm thấy class_implements, tôi có thể sử dụng nó, nhưng có lẽ có cái gì đó đơn giản hơn?
Và thứ hai, quan trọng hơn, tôi cho rằng hàm này tồn tại, liệu có đủ để kiểm tra xem biến is_arrayhoặc " Iteratorgiao diện thực hiện " hay tôi nên kiểm tra thêm thứ gì đó không?