別々のサーバーに 2 つの PHP ファイルがあるシナリオを考えてみましょう。最初のファイルから 2 番目のファイルをインクルードする必要があります。
// main.php (http://www.mysite.com/main.php) include "http://www.sample.com/includeThis.php"; echo $foo; // includeThis.php (http://www.sample.com/includeThis.php) <?php $foo = "this is data from file one";
ただし、リモート ファイルをインクルードしようとすると問題が発生します。
制限事項について
デフォルトでは、PHP の設定ではリモート サーバーからのファイルを含めることが禁止されています。この制限はセキュリティ上の理由から課されています。リモート ファイルを含めるには、php.ini でallow_url_include ディレクティブを有効にする必要があります。ただし、これは通常は無効になっており、潜在的なセキュリティ リスクのため悪い習慣であると考えられています。
代替解決策: file_get_contents()
リモートからデータを取得する必要がある場合PHP コードを実行せずにファイルを取得するには、file_get_contents() 関数を使用できます。リモート ファイルの内容をプレーン テキストとして返します。
このメソッドを使用するには、リモート スクリプトを変更して、ローカル スクリプトが処理できる形式 (JSON など) で必要なデータを生成します。次に、ローカル スクリプト内で次のようにします。
$remoteData = file_get_contents("http://www.sample.com/includeThis.php"); $data = json_decode($remoteData);
このソリューションにより、セキュリティを損なうことなくリモート ファイルからデータを取得できます。
以上が別のサーバーから PHP ファイルを含めるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。