2009-03-10 7 views
14

1つのPHPファイルを別のPHPファイルを同じサーバ上で "実行"(include?)して、そのエコー出力を文字列としてアクセスします。別のPHPファイルからのecho出力を読む

PHPでこれを行うにはどうすればよいですか?これを行うための組み込み関数はありますか?

あるいは、別のPHPファイルを実行してその出力を得るより良い方法はありますか?

答えて

31

あなたはこれを達成するためにPHPのoutput bufferingを使用することができます。

ob_start(); // begin collecting output 

include 'myfile.php'; 

$result = ob_get_clean(); // retrieve output from myfile.php, stop buffering 

$resultは、テキストが含まれています。あなたのphp.iniにはallow_url_includeを有効にしない限り(あなたはそれへのアクセス権を持っている場合)

を代わりにすることができます - あなたは、あなたの地元のスクリプトに外部のウェブサイト/サーバー上にあるPHPスクリプトを含めることはできません

+0

私たちが2つの環境を持っているときに答えてください。 urlは設定可能である方が良いかもしれません:) Thanks Typewar – Wieczo

2

そのウェブサイト/サーバーがページをレンダリングし、これを行うことにより、ローカルスクリプトの結果のHTML出力を取得してみましょう:

$result = file_get_contents('http://127.0.0.1/myfile.php'); 
私もあなたはそれが良いことができ
+1

しなかった、 'ob_start()を'と答えるだろう – Sep

関連する問題