It often happens to me to handle data that can be either an array or a null variable and to feed some foreach
with these data.
$values = get_values();
foreach ($values as $value){
...
}
When you feed a foreach with data that are not an array, you get a warning:
Warning: Invalid argument supplied for foreach() in […]
Assuming it’s not possible to refactor the get_values()
function to always return an array (backward compatibility, not available source code, whatever other reason), I’m wondering which is the cleanest and most efficient way to avoid these warnings:
- Casting
$values
to array - Initializing
$values
to array - Wrapping the
foreach
with anif
- Other (please suggest)