ob_get_contents не работает, когда внутри foreach - PullRequest
0 голосов
/ 26 июня 2019

Привет,

У меня есть этот код, который прекрасно работает

function show_aval($place) {
   echo $place;
}

ob_start();
show_aval(london);
$show_aval = ob_get_contents();
ob_clean();

ob_start();
show_aval(york);
$show_aval2 = ob_get_contents();
ob_clean();

ob_start();
show_aval(liverpool);
$show_aval3 = ob_get_contents();
ob_clean();

, но я хочу упростить этот код следующим образом:

$avalrooms = [];
$cities = ["london", "york", "liverpool"];
foreach ($cities as $city) {
    ob_start();
    show_aval($city);
    $avalrooms[$city] = ob_get_contents();
    ob_clean;
}

однако этокажется, обнуляет ob_get_contents, потому что функция выполняется сразу же, как указано show_aval($city);.

Почему это происходит?

Спасибо.

...