Вопрос foreach по массивам, возвращаемым функциями - PullRequest
1 голос
/ 25 июля 2010

Интересно, смогу ли я

foreach (func_to_return_array() as $item) { ... }

это будет вызывать func_to_return_array() много раз (длина массива)? если это так, я думаю, что будет лучше использовать

$arr = func_to_return_array();
foreach ($arr as $item) { ... }

1 Ответ

7 голосов
/ 25 июля 2010

Он будет вызывать func_to_return_array() только один раз.Пример:

foreach (foo() as $v) {
  echo "$v\n";
}

function foo() {
  echo "Called foo\n";
  return range(1, 5);
}

Вывод:

Called foo
1
2
3
4
5
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...