Как записать в строку результат выполнения php-скрипта?
От: danshar  
Дата: 19.12.03 06:06
Оценка:
Используется PHP.
Вопрос:
Возможно ли из PHP-скрипта обратиться к другому PHP скрипту и HTML-код, который тот вернет записать в строковую переменную?
Необходимо для дальшейшего разбора.
Заранее благодарен.
... << RSDN@Home 1.1 beta 1 >>
Re: Как записать в строку результат выполнения php-скрипта?
От: Aquary Россия https://wmspanel.com/
Дата: 19.12.03 07:54
Оценка:
Здравствуйте, danshar, Вы писали:

D>Возможно ли из PHP-скрипта обратиться к другому PHP скрипту и HTML-код, который тот вернет записать в строковую переменную?


RTFM get_file_content (или get_file_contents? )
https://wmspanel.com/nimble — Nimble Streamer media server for live and VOD HLS, RTMP, HTTP streaming
https://wmspanel.com/ — Control and reporting panel for Wowza and Nimble Streamer
http://scm-notes.blogspot.com/ — Блог об управлении конфигурацией
Re: Как записать в строку результат выполнения php-скрипта?
От: leshi Россия  
Дата: 19.12.03 08:03
Оценка:
Здравствуйте, danshar, Вы писали:

D>Возможно ли из PHP-скрипта обратиться к другому PHP скрипту и HTML-код, который тот вернет записать в строковую переменную?

D>Необходимо для дальшейшего разбора.
А если объявить переменную как global и записать в нее результат, потом вызвать скрипт не полегчает?
// file1.php
global $some_var;
$some_var="<a href='http://rsdn.ru'>Самый лучший сайт!</a>";
include ("file2.php");

// file2.php
global $some_var;
echo $some_var;
... << RSDN@Home 1.1.0 stable >>
Re[2]: Как записать в строку результат выполнения php-скрипт
От: ЖуК Украина http://smart-ip.net/
Дата: 19.12.03 09:02
Оценка:
Здравствуйте, Aquary, Вы писали:

A>Здравствуйте, danshar, Вы писали:


D>>Возможно ли из PHP-скрипта обратиться к другому PHP скрипту и HTML-код, который тот вернет записать в строковую переменную?


A>RTFM get_file_content (или get_file_contents? )


Ну, во-первых, file_get_contents()... Во-вторых — это работает только с версии PHP >= 4.3.0...

В третьих, при таком подходе скрипт нужно экзекутать по урлу, иначе вычитаешь сам ПХП-код... А если файл нужно екзекутнуть локально, то лучше сделать так.

<?php
ob_start();
include_once "blablabla.php";
$html_content = ob_get_contents();
ob_end_clean();
?>


_____________________________________________________________
"Голова — кость, поэтому болеть не может..." © Неизвестный автор
Re[2]: Как записать в строку результат выполнения php-скрипт
От: ЖуК Украина http://smart-ip.net/
Дата: 19.12.03 09:04
Оценка:
Здравствуйте, leshi, Вы писали:

L>Здравствуйте, danshar, Вы писали:


D>>Возможно ли из PHP-скрипта обратиться к другому PHP скрипту и HTML-код, который тот вернет записать в строковую переменную?

D>>Необходимо для дальшейшего разбора.
L>А если объявить переменную как global и записать в нее результат, потом вызвать скрипт не полегчает?
L>
L>// file1.php
L>global $some_var;
L>$some_var="<a href='http://rsdn.ru'>Самый лучший сайт!</a>";
L>include ("file2.php");

L>// file2.php
L>global $some_var;
L>echo $some_var;

L>


И нах такой бред? Да еще и с глобалами всякими... Читайте доки — они рулез (с) KingOleg
_____________________________________________________________
"Голова — кость, поэтому болеть не может..." © Неизвестный автор
Re[3]: Как записать в строку результат выполнения php-скрипт
От: Aquary Россия https://wmspanel.com/
Дата: 19.12.03 09:11
Оценка:
Здравствуйте, ЖуК, Вы писали:

ЖуК> Ну, во-первых, file_get_contents()...

на память писал

ЖуК>Во-вторых — это работает только с версии PHP >= 4.3.0...

нефиг на всяком старье сидеть

ЖуК>В третьих, при таком подходе скрипт нужно экзекутать по урлу, иначе вычитаешь сам ПХП-код... А если файл нужно екзекутнуть локально, то лучше сделать так.


я привел решение для общего случая. твое совершенно решение верно с одним НО — если до этого ещё не был объявлен ob_start(). А так — да, конечно лучше.
https://wmspanel.com/nimble — Nimble Streamer media server for live and VOD HLS, RTMP, HTTP streaming
https://wmspanel.com/ — Control and reporting panel for Wowza and Nimble Streamer
http://scm-notes.blogspot.com/ — Блог об управлении конфигурацией
Re[4]: Как записать в строку результат выполнения php-скрипт
От: ЖуК Украина http://smart-ip.net/
Дата: 19.12.03 09:15
Оценка:
Здравствуйте, Aquary, Вы писали:

A>Здравствуйте, ЖуК, Вы писали:


ЖуК>> Ну, во-первых, file_get_contents()...

A>на память писал

Я не придираюсь

ЖуК>>Во-вторых — это работает только с версии PHP >= 4.3.0...

A>нефиг на всяком старье сидеть

Согласен, что нуно использовать прогрессивные технологии, однако нужно учитывать в данном случае специфику проекта Если он "ширпотребовский" и может стоять на каком угодно хостинге... тогда с этим придется считаться...

ЖуК>>В третьих, при таком подходе скрипт нужно экзекутать по урлу, иначе вычитаешь сам ПХП-код... А если файл нужно екзекутнуть локально, то лучше сделать так.


A>я привел решение для общего случая. твое совершенно решение верно с одним НО — если до этого ещё не был объявлен ob_start(). А так — да, конечно лучше.


Готов поавить бабки на то, что не объявлен. Иначе у чела таких вопросов не возникало бы
_____________________________________________________________
"Голова — кость, поэтому болеть не может..." © Неизвестный автор
Re[4]: Как записать в строку результат выполнения php-скрипт
От: ЖуК Украина http://smart-ip.net/
Дата: 19.12.03 09:18
Оценка:
Здравствуйте, Aquary, Вы писали:

A>на память писал


З.Ы. Я тоже напамять... Может тебе нужен апгрейд памяти? (DIMM->DDR) (" — Шутка..." (с) Ю. Никулин)
_____________________________________________________________
"Голова — кость, поэтому болеть не может..." © Неизвестный автор
Re[5]: Как записать в строку результат выполнения php-скрипт
От: Aquary Россия https://wmspanel.com/
Дата: 19.12.03 09:19
Оценка: +1
Здравствуйте, ЖуК, Вы писали:

ЖуК>Согласен, что нуно использовать прогрессивные технологии, однако нужно учитывать в данном случае специфику проекта Если он "ширпотребовский" и может стоять на каком угодно хостинге... тогда с этим придется считаться...

на это можно почти всегда забивать, т.к. если хостер нормальный — у него всегда последний стабильный билд ПХП стоит. Если нет — или пинать хостера или переходить к другому.
Да и написат своию функцию с таким же именем (для обратной совместимости) в случае чего труда не составит

ЖуК>Готов поавить бабки на то, что не объявлен. Иначе у чела таких вопросов не возникало бы

согласен
https://wmspanel.com/nimble — Nimble Streamer media server for live and VOD HLS, RTMP, HTTP streaming
https://wmspanel.com/ — Control and reporting panel for Wowza and Nimble Streamer
http://scm-notes.blogspot.com/ — Блог об управлении конфигурацией
Re[3]: Как записать в строку результат выполнения php-скрипт
От: leshi Россия  
Дата: 19.12.03 12:41
Оценка:
Здравствуйте, ЖуК, Вы писали:

ЖуК>И нах такой бред? Да еще и с глобалами всякими... Читайте доки — они рулез (с) KingOleg

Не, ну работать-то будет... Значит имеет право на существование.
Если траблы в другом, просвяти дурака, почему так делать не надо?
... << RSDN@Home 1.1.0 stable >>
Re[4]: Как записать в строку результат выполнения php-скрипт
От: King Oleg Украина http://kingoleg.livejournal.com
Дата: 19.12.03 12:50
Оценка: 6 (1)
Здравствуйте, Aquary, Вы писали:

A>я привел решение для общего случая. твое совершенно решение верно с одним НО — если до этого ещё не был объявлен ob_start(). А так — да, конечно лучше.

ob_start() могут быть вложенными Сами проверьте.
King Oleg
*Читайте DOC'и, они rules*
Re[4]: Как записать в строку результат выполнения php-скрипт
От: King Oleg Украина http://kingoleg.livejournal.com
Дата: 19.12.03 12:54
Оценка:
Здравствуйте, leshi, Вы писали:

L>Здравствуйте, ЖуК, Вы писали:


ЖуК>>И нах такой бред? Да еще и с глобалами всякими... Читайте доки — они рулез (с) KingOleg

L>Не, ну работать-то будет... Значит имеет право на существование.
L>Если траблы в другом, просвяти дурака, почему так делать не надо?
По первых, таким образом ты ограничиваешь количество скриптов, вывод которых ты можешь записать в переменную. То есть, таким способом ты сможешь записать в переменную только те скрипты, которые ничего не выводят в stdout, а сами записывают вывод в переменную. Во вторых, глобальная переменная, которую ты хочешь использовать в свою очередь может быть уже где-нибудь используется. ИМНО, плохой тон. Намного универвальней
ob_start();
include("url_to_script_or_local_path_to_script");
$output = ob_get_contents();
ob_end_clean();
King Oleg
*Читайте DOC'и, они rules*
Re[4]: Как записать в строку результат выполнения php-скрипт
От: ЖуК Украина http://smart-ip.net/
Дата: 19.12.03 12:56
Оценка:
Здравствуйте, leshi, Вы писали:

L>Здравствуйте, ЖуК, Вы писали:


ЖуК>>И нах такой бред? Да еще и с глобалами всякими... Читайте доки — они рулез (с) KingOleg

L>Не, ну работать-то будет... Значит имеет право на существование.
L>Если траблы в другом, просвяти дурака, почему так делать не надо?

Вполне с тобой согласен.. Имеет право... на существование. НО НЕ НА ЖИЗНЬ!

Ну, во-первых, извини, если задел — я никого не считаю дураком... я сам еще учусь

Так можно сделать, но это можно сделать только в том случае, если скрипт файл2.пхп пишешь ты сам. Причем при его написании имеешь нехилый геморрой с переменной в которую надо засовывать контент. А если файл2.пхп будет делать нечто подобное? чуствунешь — пахнет жареным. Изменить/исправить такой код в дальнейшем становиться крайне сложно... А постороннему человеку и подавно... Да и глобалсы его еще больше запутывают... Вообщем, некрасиво до ужаса... ИМХО.. это всего лишь мое ИМХО...
_____________________________________________________________
"Голова — кость, поэтому болеть не может..." © Неизвестный автор
Re[5]: Как записать в строку результат выполнения php-скрипт
От: ЖуК Украина http://smart-ip.net/
Дата: 19.12.03 13:03
Оценка:
Здравствуйте, King Oleg, Вы писали:

KO>Здравствуйте, Aquary, Вы писали:


A>>я привел решение для общего случая. твое совершенно решение верно с одним НО — если до этого ещё не был объявлен ob_start(). А так — да, конечно лучше.

KO>ob_start() могут быть вложенными Сами проверьте.

Действительно... работает все отлично... а я даже и не подумал усомниться мерси за наводку

Вот, посмотрите сами, если кто не верит:

http://scripts.kiev.ua/ob_test.php — результат
http://scripts.kiev.ua/src/ob_test.php — исходник
_____________________________________________________________
"Голова — кость, поэтому болеть не может..." © Неизвестный автор
Re[5]: Как записать в строку результат выполнения php-скрипт
От: danshar  
Дата: 23.12.03 04:20
Оценка:
Спасибо!!!
... << RSDN@Home 1.1 beta 1 >>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.