2009-05-28 12 views
9

インクルードファイルの内容全体をエコーする必要があります。私は以下を試しました:ファイルの全内容を含めてエコーする

echo "<?php include ('http://www.example.com/script.php'); ?>"; 

echo "include (\"http://www.example.com/script.php\");"; 

どちらも動作しませんか? PHPはこれをサポートしていますか?

+0

あなたは何を正確にやろうとしていますか? include()の結果をエコーし​​ますか? 含めるファイルの内容をエコーし​​ますか? –

+0

インクルードファイルの内容をエコーし​​ようとする – Elliott

答えて

16

ちょうど行います

include("http://www.mysite.com/script.php"); 

または:

echo file_get_contents("http://www.mysite.com/script.php"); 

ノート:

  • これは、ネットワークの遅延に起因するあなたのページを遅くしたり、他のサーバが遅い場合。
  • PHPをインストールするには、allow_url_fopenがオンになっている必要があります。ホストによっては電源を切る人もいます。
  • これはPHPコードを与えるものではなく、HTML /テキスト出力を提供します。
+1

ありがとうございますfile_get_contents works :) – Elliott

+0

あなたに伝えるだけで、私はなぜ、私の場合はちょうど'include'バージョンの作品 –

1

Echoは出力バッファに何かを印刷します。これはPHPによって解析されません。何かを含める場合は、そのまま実行してください

include ('http://www.mysite.com/script.php'); 

PHPソースコードを書くときに、PHPソースコードを印刷する必要はありません。

+0

こんにちは、これを試して、直接ファイルへのアクセスが許可されていないと言うエラーを受け取ります。 – Elliott

+1

allow_url_fopenのようなサウンドはオフになっています。ホストが許可している場合は、.htaccessファイルに "php_value allow_url_fopen 1"を入れてみてください。 – ceejayoz

+0

彼の質問は、どうしたらよいかどうかではなく、どうやってやるべきことでしたか?彼が何をしているのかを知らせることは、その質問に答えるのに役立たない。尋ねられない限り、彼の戦略は彼の責任です。 – KOGI

1

これをご覧ください。 How do I capture PHP output into a variable?

+0

このリンクはPHPのoutput_buffer関数について語っています。これまでにこのスレッドで提供された答え(例えば、echo、readfile、file_get_contents)は、何も実行せずに、インクルードされたphpファイル__asをリテラルとして返すだけです。しかし、ob_...関数はEXECUTEDインクルードファイルの出力を管理します。 [php ob_start](http://php.net/manual/en/function.ob-start.php) – dsdsdsdsd

0

実際には何を求めているのですか、実際にはhttpで何かを含めることはできません。サーバーがファイルを解析するので、コードを見ることを期待します。

"script.phpは" ローカルファイルである場合は、あなたが何かを試みることができる:

$file = file_get_contents('script.php'); 
echo $file; 
2

最短の方法は次のとおりです。

readfile('http://www.mysite.com/script.php'); 

意志直接出力ファイルを。

0

これはあなたの質問に対する正確な答えではないかもしれませんが、単にecho文を閉じ、include文を挿入してから新しいecho文を追加するのはなぜですか?

<?php 
    echo 'The brown cow'; 
    include './script.php'; 
    echo 'jumped over the fence.'; 
?> 
0

マットはreadfile()で正しいですが、誰かがPHPファイル処理関数を検討するために、それはまた、役に立つかもしれ manual entry for fpassthru

<?php 

$f = fopen($filepath, 'r'); 

fpassthru($f); 

fclose($f); 

?> 
関連する問題