• 締切済み

PHPでhttp上の外部ファイルをrequireしたい

PHPでhttp上の外部ファイルをrequireしたいのですが、変数がうまく 参照できません。例えば以下のようにすると、common1.phpの中で $a=$a+1 と書いても、11と出力されずに10と出力されます。 (require自体はうまく行っているようで、common1.phpの中で print等を書くとそれ自体は問題なく実行されます。) require("./common1.php")のようにファイル指定だと問題なく11と 出力されます。原因・解決方法等ご存じのかたがいらっしゃったら 教えてください。FedoraCore4 PHP5.0.4です。 <?php $a = 10; require("http://hogehoge/common1.php"); print "$a"; ?>

みんなの回答

  • php504
  • ベストアンサー率42% (926/2160)
回答No.2

http経由とサーバ内操作は違いますよ。 require("http://example.com/common1.php"); の場合はブラウザでhttp://example.com/common1.phpにアクセスして表示される結果(ソース表示の内容)が読み込まれるだけです。 common1.phpを <?php echo '<?php $a=$a+1 ; ?>'; ?> のようにすれば希望の動作は得られますが。

kenken_pa
質問者

お礼

下にも書きましたがさっき気づきました。ありがとうございます。

  • hola1973
  • ベストアンサー率45% (5/11)
回答No.1

私は問題なく表示されますよ。 inc.php <? $a = $a + 1; ?> main.php <? $a = 10; require('./inc.php'); echo $a; ?> 結果:11 同じように記載してみてもだめですか?

kenken_pa
質問者

お礼

ローカルでなくhttp上のファイルです。 でもよく考えたらダメなような気がします。httpプロトコルで 取ってくる以上は、common1.phpのhttp上の結果が出力されるだけで コードをそのまま持ってくるわけじゃないですもんね…

関連するQ&A