|
Объясните строку кода на PHP | ☑ | ||
---|---|---|---|---|
0
Помогите
23.01.15
✎
10:13
|
ob_start(); echo 'Вот так все и произошло'; return ob_get_clean();
В чем смысл этого? Не проще написать сразу return 'Вот так все и произошло'; ? |
|||
1
eRik
23.01.15
✎
10:23
|
проще, но..
а) код писали индусы б) просто тупо заюзали шаблон в) изначально там было еще что-то, что потом удалили, а оптимизировать код было лень/некогда г) ... да мало ли чего |
|||
2
Xapac
23.01.15
✎
10:31
|
(0) нет. эхо это типа вывести а ретур это вернёт строку.
а что вызывает процедура ob_get_clean() одному интерпретатору известно |
|||
3
TheVeryHe
23.01.15
✎
10:42
|
ob_start — Включение буферизации вывода
ob_get_clean — Получить содержимое текущего буфера и удалить его |
|||
4
Помогите
23.01.15
✎
10:52
|
(2) а! Вот оно что... Спасибо. Буд знать.
|
|||
5
Помогите
23.01.15
✎
10:52
|
Темку можно закрывать
|
|||
7
Помогите
23.01.15
✎
11:10
|
(6) Что-то не вижу там функций сжатия.
|
|||
9
shpioleg
23.01.15
✎
11:52
|
До отправки HTTP заголовка header () нельзя ничего посылать клиенту. Тем более выводить с помощью echo. Поэтому все ,что хочешь вывести на этапе работы php скрипта, буферизируешь и только потом выводишь.
|
|||
10
Помогите
23.01.15
✎
11:52
|
(8) Откуда бы ни было, смысл от этого не меняется. То что возвратил return можно сжать в обоих случаях.
|
|||
11
Помогите
23.01.15
✎
11:53
|
(9) return 'Вот так все и произошло'; так же ничего не выводит. Никакой разницы не вижу
|
|||
12
Rie
23.01.15
✎
11:58
|
(11) Так return и не должен выводить. В отличие от echo.
|
|||
13
vlandev
23.01.15
✎
12:00
|
(11) Вот так должно быть понятнее:
ob_start(); echo 'Вот так все и произошло'; return ob_get_clean(); |
|||
14
Помогите
23.01.15
✎
12:06
|
(12) так и echo в данном случае ничего не выводит
|
|||
15
Помогите
23.01.15
✎
12:07
|
(13) Ничего не изменилось. Только в три строки стало
|
|||
16
Rie
23.01.15
✎
12:09
|
(14) Правильно. См. (9).
(15) В (0) ты хотел (?) вернуть из функции строку 'Вот так все и произошло'. А в тексте сказано, что возвращать надо не строку, а результат ob_get_clean(). Есть разница? |
|||
17
Помогите
23.01.15
✎
12:47
|
(16) Пока разницы не вижу. Результат ob_get_clean() разве не строка 'Вот так все и произошло'?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |