2

私たちが使用するカスタム フレームワークがあり、include他のページにコーディングすることができます。includeただし、コードが何も出力しない場合でも、このコードのヘッダーは常に出力されます。/を介してトラップおよびキャッチできるexit、または特定の方法で、正しいことを行うことができる方法はありますか?returnincluderequire

4

2 に答える 2

5

出力バッファーをアクティブにし、ファイルをインクルードして、その内容を確認します。

ob_start();
include "file.php";
$content = ob_get_contents();
ob_end_clean();

その後、生成されたコンテンツを確認し、それを保持するかダンプします。

よろしくお願いします、ファビアン

于 2009-12-05T02:16:16.987 に答える
3

これは最適な解決策ではないかもしれませんが、素晴らしいトリックです。PHP-include を関数や戻り値として実際に使用できます。

例えば。myinclude.php というファイルを作成します。

<?php

$a = 9192*9192;
return a;

次に、2 番目のファイルを作成し、最初のファイルを含めます。

<?php

$res = include("myinclude.php");
echo $res;

はい、実際に動作します。詳細については、マニュアル ページを参照してください。また、インクルード ファイルから明示的に何も返されない場合、include() は "OK" を返すことに注意してください (奇妙なことに)。これは、require()、include_once()、require_once() でも機能します。

于 2009-12-05T02:18:30.227 に答える