如何将所有内容存储在变量中而不是分别回显所有内容?

时间:2010-04-19 15:49:30

标签: php variables

请参阅:http://pastebin.com/5za3uCi1

我对php很新,我正在编辑ventrilo状态脚本。我想要它做的是它将所有内容存储在一个大变量中以便于解析,而不是使用单独的echo。有人能告诉我如何才能做到这一点吗?

谢谢,

丹尼斯

3 个答案:

答案 0 :(得分:5)

您可以使用output buffer并获取其内容:

ob_start();
echo 'foobar';
$contents = ob_get_contents();  // now contains 'foobar'
ob_end_clean();

答案 1 :(得分:3)

在开头声明一个变量,比如$ data或者其他什么。然后,替换echo调用:

echo "hello";

用这个:

$data .= "hello";

然后在函数末尾返回$ data变量。

答案 2 :(得分:0)

您可以使用简单的做法来代替回声:

$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 />';