Поддерживаю мысль Василий - если имеется php 5.4+, можно даже так:
$res = [];
array_walk(
$arr,
function($k, $v) use (&$res) {
// создаем любые переменные в любом количестве
// при необходимости пишем что-нибудь в $res
}
);
если внутри создается прям дофига переменных - создайте массив $tmp и храните переменные в нем, в конце сделайте $tmp = NULL; если так критична память. А если это "пирфикцианизм" и "аптемизация" то лучше не морочить себе голову и доверить все ГК.