【发布时间】:2011-11-23 17:34:42
【问题描述】:
我正在使用echo 输出的一些函数。但我需要他们的return,所以我可以在 PHP 中使用它们。
这行得通(似乎没有问题)但我想知道,有没有更好的方法?
function getEcho( $function ) {
$getEcho = '';
ob_start();
$function;
$getEcho = ob_get_clean();
return $getEcho;
}
示例:
//some echo function
function myEcho() {
echo '1';
}
//use getEcho to store echo as variable
$myvar = getEcho(myEcho()); // '1'
【问题讨论】:
-
有,使用搜索。顺便说一句,使用直接输出任何数据的函数被认为是不好的风格。
-
这是我目前找到的唯一方法。
-
@str:有一些内置函数无法更改,并且可以直接输出数据(例如 var_dump)。但对于自写函数,你是对的。
-
@str Thx / 当您说“输出”时,您是指返回还是回显?
-
@oezi 我知道,但这不应该适应你自己的功能(只是说)。 ryanve:我的意思是呼应和“没有”而不是“有”。
标签: php return echo output-buffering