Форум "Web-мастер"
Технологии web-програмирования
#0 ID © 19.09.06 11:18:56 - 20.09.06 14:46:32 "перехват" eval()Доброго времени суток. Простой вопрос от новичка в PHP :) Вопрос: Есть некая функция, в которой используется eval(). Необходимо все, что выводит не экран эта функция присвоить переменной. Как?
|
|
А переписать функцию не канает? |
|
тебе нужно присвоить переменной результат функции или ее видимый результат? |
|
#3 ID © 20.09.06 09:03:08
мне нужно было присвоить видимый результат выполнения функции. Проблему решил обходным путем. Пол дня потерял, переделал все через шаблоны. Проблема исчезла, но ответ на свой вопрос так и не нашел :) |
|
> #3 ID © скорее всего только разбиением функции на более мелкие части с выделением блоков которые выводят информацию пользователю. Собственно то, что ты и сделал - выделил шаблоны. |
|
#5 McSimm © 20.09.06 14:20:45
Лучшее решение - переписать функцию. И крайне рекомендую строго избегать eval() -- крайне редко использование этой функции может быть объективно оправдано. --- Общее решение для заданного вопроса достаточно простое - использовать буферизацию вывода. например : ob_start(); // запустить новый уровень буферизации echo "Hello World"; // некий вывод в поток $str = ob_get_contents(); // получить буфер вывода ob_end_clean(); // очистить и закрыть текущий уровень |
|
> использовать буферизацию вывода. например блин, а меня чё-то переклинило, что речь о JavaScript. |
Написать ответ |
|

