Как хранить все в переменной, а не отображать все отдельно? - PullRequest
1 голос
/ 19 апреля 2010

см. http://pastebin.com/5za3uCi1

Я новичок в php и редактирую скрипт статуса ventrilo. Я хотел бы, чтобы он сохранял все в одной большой переменной для простого анализа вместо использования отдельных эхо-сигналов Может кто-нибудь сказать мне, как я могу это сделать?

Спасибо

Dennis

Ответы [ 3 ]

5 голосов
/ 19 апреля 2010

Вы можете использовать выходной буфер и получить его содержимое:

ob_start();
echo 'foobar';
$contents = ob_get_contents();  // now contains 'foobar'
ob_end_clean();
3 голосов
/ 19 апреля 2010

объявляем переменную в начале, скажем, $ data или что-то еще. затем замените эхо-вызовы:

echo "hello";

с этим:

$data .= "hello";

затем вернуть переменную $ data в конце функции.

0 голосов
/ 19 апреля 2010

Вместо эха вы можете использовать простую аффектацию:

$request = "CVentriloStatus->Request() failed. <strong>$stat->m_error</strong><br><br>\n";

Но вскоре у вас возникнут проблемы с управлением несколькими переменными.

Вы можете создать объект для обработки и хранения вашей информации, но если вам нужно что-то простое в настройке и простое в использовании, я бы выбрал массивы:

$ventriloStatus = array();
$ventriloStatus['requestObj'] = $stat->Request();
$ventriloStatus['requestMsg'] = "CVentriloStatus->Request() failed. <strong>$stat->m_error</strong><br><br>\n";

Добавьте свои данные, используя ключи. Затем легко получите значение:

echo $ventriloStatus['requestMsg'];

Вы даже можете анализировать данные, используя простой цикл

foreach($ventriloStatus as $key => $value){
    echo $key.' : '.$value.'<br />';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...