- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
<?php
/*///////////////////////////////////////////////
Эта функция инклюдит файл.
Все, что этот файл отправляет на вывод,
не уходит на вывод, а возвращется этой функция
Для работы, функция использует функции ob,
которые работают с буфером, поэтому
использовать их для друхих целей нужно очень
аккуратно и только, если вы знаете,
как все это функционирует
///////////////////////////////////////////////*/
function s_file ( /*string-путь к файлу*/ $path )
{
ob_start() ; //Запускает буферизацию вывода
require ($path) ; //Запускает файл по адрессу
return ob_get_clean () ; //Возвращает содержимое буфера или FALSE при ошибке
}
?>
telnet 28.07.2010 10:47 # +5
bugmenot 28.07.2010 12:30 # 0
mr.The 28.07.2010 12:44 # +2
asics 28.07.2010 14:09 # −2
И если бы автор сам знал как это функционирует, то сначала получил содержимое буфера, потом закрыл буфер и после вернул результат, а еще после не писал бы последние 5 строчек комментария.
Примерно так
Berliner 28.07.2010 14:30 # 0
но и закрывает буфер,
заменяя таким образом функции ob_end_clean и ob_get_contents()
Пруфлинк: http://de2.php.net/manual/en/function.ob-get-clean.php
Lure Of Chaos 28.07.2010 20:59 # +1
все таки ob_get_contents перед ob_end_clean, как практика показала, надежнее
Анонимус 28.07.2010 14:42 # +9
bugmenot 28.07.2010 15:15 # +8
Анонимус 28.07.2010 15:21 # 0
daemon_master 28.07.2010 17:44 # +1
mrbig66 28.07.2010 21:34 # 0
mrbig66 28.07.2010 21:34 # 0
Мистер Хэнки 28.07.2010 18:45 # +1
Lure Of Chaos 28.07.2010 21:04 # 0
mrbig66 28.07.2010 21:35 # 0
ZX_Spectrum 28.07.2010 21:38 # +3