2011-06-21 7 views
1

私はあなたが出力バッファを使用できることを知っています。今の問題は、Wordpressプラグインで関数を使用していて、自動的に関数を使用して自動的に戻り値を出力することです。しかし、私はそれが偽か私のデータを返すかどうかを確認するために戻り値をチェックしたいと思います。PHP:関数の出力を抑止できますか?

私が試してみました:

if(function_name()) { 

} 

$name = function_name(); 

を、私はまだ私は、なぜ私はそれを抑制し、最初のいくつかのチェックをやってみたかったような状況で出力を、見ることができます。私はプラグインの中核機能を編集したくないですが、私は最後の手段になります。もっと良い仕事がありますか?

+0

http://php.net/manual/en/book.outcontrol.php –

答えて

8

はい。それはこのように行うことができます。

ob_start(); 
if (function_name()) { } 
else {} 

// then you can do one of the following 
ob_end_clean(); // in case you want to suppress function_name output 
ob_flush(); // in case you don't want to suppress function_name output 

は、出力制御機能の詳細については、一見hereを持っています。

また、ob_flushob_end_cleanの代わりにob_get_cleanを使用することもできます。

0

まず、関数の出力と戻り値を取得します。

ob_start(); 
$name = function_name(); 
$output = ob_get_clean(); 

次に、出力するかどうかを決定します。

if ($name !== false) { 
    echo $output; 
} 

あなたはそれがfalseなかった場合や、それは実際にあなたがページに送信したい関数の出力だった場合、戻り値でやりたいことは明らかでありませんでした。

関連する問題