Я хочу використовувати foreachцикл зі змінною, але ця змінна може бути різних типів, NULLнаприклад.
Отже, перш ніж foreachперевірити:
if(is_array($var)){
foreach($var as ...
Але я зрозумів, що це також може бути клас, який реалізує Iteratorінтерфейс. Можливо, я сліпий, але як перевірити, чи реалізує клас інтерфейс? Чи є щось на зразок is_aфункції або inheritsоператора? Я знайшов class_implements, я можу ним скористатися, але, можливо, є щось простіше?
А по-друге, що є більш важливим, я вважаю, що ця функція існує, було б достатньо, щоб перевірити, чи є змінна is_arrayчи "реалізує Iteratorінтерфейс", чи мені слід перевірити щось більше?