В следующем коде:
function a(){
echo 'a';
return array(1,2,3,4);
}
foreach(a() as $t){
echo $t;
}
Мы можем видеть, что() вызывается только один раз, и кажется, что возвращаемое значение кэшируется...
Но тогда я должен был увидеть эту дискуссию (см. Комментарии к вопросу) Я что-то не хватает?