Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Как записать в переменную результат выполнения скрипта?
 
 автор: Sywooch   (25.03.2006 в 16:25)   письмо автору
 
 

Подскажите пожалустка, как можно записать результат скрипта типа

<?
include 'ссылка на РНР файл с HTML и прочей ерундой';
?>

поместить в переменную?

   
 
 автор: Киналь   (25.03.2006 в 17:07)   письмо автору
 
   для: Sywooch   (25.03.2006 в 16:25)
 

Например, так:

<?

ob_start
();
 
include 
'ссылка на РНР файл с HTML и прочей ерундой'

$var=ob_get_contents();
ob_end_clean();

?>

Все вместе называется буфер.

   
 
 автор: Sywooch   (25.03.2006 в 18:26)   письмо автору
 
   для: Киналь   (25.03.2006 в 17:07)
 

А этот буфер можно применить в такой конструкции? >>
http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=14984

   
 
 автор: Киналь   (25.03.2006 в 22:06)   письмо автору
 
   для: Sywooch   (25.03.2006 в 18:26)
 

Да можно, наверное=)
Буферизация работает крайне просто: результат работы скрипта выводится не в браузер, а в буфер; значение буфера (являющееся обычной строкой) можно присвоить переменной и работать с ней как душе угодно.

   
 
 автор: Sywooch   (25.03.2006 в 23:15)   письмо автору
 
   для: Киналь   (25.03.2006 в 22:06)
 

Примерчик использования этого буфера мог бы кто оставить?
То что вверху непонятно что куда откуда :(

   
 
 автор: cheops   (26.03.2006 в 03:02)   письмо автору
 
   для: Sywooch   (25.03.2006 в 23:15)
 

Пример можно найти в теме по ссылке http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=148.

   
 
 автор: Sywooch   (26.03.2006 в 11:55)   письмо автору
 
   для: cheops   (26.03.2006 в 03:02)
 

Вопрос отпадает поскольку нашел решение.
Конечно благодаря вашему буферу.
Теперь все выглядит так.
Если где напортачил сообщите :)
<?
function Parse (){ 
    global 
$Designs$DesignOut$name_site$template$copy$menu$varik;
$mine_menu menu_print('menu');
$content content(); 
        foreach(
$Designs as $k){
$DesignOut=str_replace("@menu@","$mine_menu",$DesignOut);

DEFINE("MAINE""start");
DEFINE("LINK1""humor");
DEFINE("LINK2""2"); 
DEFINE("LINK3""3");
DEFINE("LINK4""4");
$link=empty($_GET['link'])?null:$_GET['link']; 
  switch (
$link) {
    case 
MAINE:
      
$page "./vstavka/start.php";

    break;
    case 
LINK1:
      
$page "./$include/1.php";

    break;
    case 
LINK2:
      
$page "./$include/2.php";

    break;
    case 
LINK3:
      
$page "./$include/3.php";

    break;
    case 
LINK4:
      
$page "./$include/4.php";

    break;
    default:
      
$page "./$include/start.php";

    break;
  }
ob_start(); 
include 
"$page";
$page=ob_get_contents(); 
ob_end_clean();

$DesignOut=str_replace("@content@","$page",$DesignOut);
$DesignOut=str_replace("@copy@","$copy",$DesignOut);
$DesignOut=str_replace("@name_site@","$name_site",$DesignOut);
$DesignOut=str_replace("@template@","$template",$DesignOut);
}}
function 
Clr ($des){ 
    global 
$Designs;
    
$Designs[$des]='';
}
?>

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования