Поскольку я сначала испортил этот ответ, давайте попытаемся прояснить это. Как упомянуто в комментариях ниже и как упомянуто в документации PHP , переменные PHP в большинстве случаев имеют только одну область видимости, поэтому переменная $temp
в этом вопросе должна быть доступна также вне цикла for, хотя это было объявлено внутри цикла. Поэтому проблема не в переменной области.
Как выяснил Прашант, проблема заключалась в том, что функция возвращала пустое значение, то есть пустое $temp