LMSouq
general-dev Open

Invalid argument supplied for foreach()

RO
Roberto Aloi
1 month ago
3 views
Problem Description
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 an `if` * Other (please suggest)

AI-Generated Solution

Powered by LMSouq AI · GPT-4.1-mini

✓ Solution Ready
Analyzing problem and generating solution…
Was this solution helpful?
Back to Knowledge Base