standards.php
次の問題があります。次のようなステートメントを含む PHP ファイル ( ) を取得しました。
define('CONSTVAR', '/path/');
今、私はuntitled.php
これを含む という別のファイルを持っています:
include ('standards.php');
echo CONSTVAR;
これにより/path/
、定数の値を示すページが表示されます。
ここまでは順調です。
しかし、standards.php
別の Web サイトに を配置し、そこから (include('http://mysite.eu/core/standards.php');
コマンドを使用して) 含めようとすると、機能しません。定数は空のままで、次のエラーも表示されます
警告: main(http://mysite.eu/core/standards.php) [function.main]: ストリームを開くことができませんでした: 28 行目の /home/www/this.nl/core/untitled.php で許可が拒否されました
警告: main() [function.include]: インクルード (include_path='.:/usr/local/php4/lib/php') のために 'http://mysite.eu/core/standards.php' を開くことができませんでした / home/www/this.nl/core/untitled.php 28 行目
allow_url_include
も有効になってallow_url_fopen
います。の完全な URL をstandards.php
ブラウザに入力すると、ページの結果が表示されるので、アクセス権がないことは問題ではありませんよね?
ここで何が問題になる可能性がありますか? リモートサーバーからインクルードするときに、グローバルであるはずの定数が「継承」されないのはなぜですか?