vars.phpを含めると:
$var='hello';
index.php内:
require 'vars.php';
echo $var;
$ varはグローバルではありませんが、うまく機能します。しかし、index.phpが次のようになっている場合:
require 'http://site.com/vars.php';
echo$varは機能しません。とにかくそれを機能させるにはどうすればよいですか?
vars.phpを含めると:
$var='hello';
index.php内:
require 'vars.php';
echo $var;
$ varはグローバルではありませんが、うまく機能します。しかし、index.phpが次のようになっている場合:
require 'http://site.com/vars.php';
echo$varは機能しません。とにかくそれを機能させるにはどうすればよいですか?
できません。 は、site.com の Web サーバーによってレンダリングされた PHP スクリプトの出力require 'http://site.com/vars.php';
を取得しようとします。これはもはや PHP コードではありません。この方法で Web サーバーに PHP ソース コードを返すことはできません。
なぜこれをしたいのですか?可能な場合は、インクルードで相対パスを使用することをお勧めします。こうすることで、ハードコーディングされたパス名を編集することなく、アプリケーション コードを移動したり、別のサーバーにデプロイしたりできます。
とにかく、これはおそらくあなたが代わりにやりたいことだと思います(相対パスではなく絶対ファイルシステムパスを使用):
require '/path/to/site.com/files/vars.php';
Linux では、このディレクトリ名は多くの場合/var/www
. Windows では、パスはドライブ文字とコロンで始まります。
require 'vars.php';
ステートメントが相対URLではなく、相対ファイル システム パスであることを理解することが重要です。