Quiero usar un foreachbucle con una variable, pero esta variable puede ser de muchos tipos diferentes, NULLpor ejemplo.
Entonces, antes de foreachprobarlo:
if(is_array($var)){
foreach($var as ...
Pero me di cuenta de que también puede ser una clase que implemente Iteratorinterfaz. Tal vez soy ciego, pero ¿cómo verificar si la clase implementa la interfaz? ¿Existe algo como is_afunción u inheritsoperador? Lo encontré class_implements, puedo usarlo, pero ¿tal vez hay algo más simple?
Y segundo, más importante, supongo que existe esta función, ¿sería suficiente para comprobar si la variable is_arrayo "implementa la Iteratorinterfaz" o debería probar algo más?