ホームページ > バックエンド開発 > PHPチュートリアル > PHPでドメインを越えてファイルをインポートする方法

PHPでドメインを越えてファイルをインポートする方法

PHP中文网
リリース: 2023-03-14 14:58:01
オリジナル
1680 人が閲覧しました

まず概念を理解する必要があります。クロスドメインとは何ですか?たとえば、a.com の a.js ファイルが b.com の b.js ファイルを呼び出すと、クロスドメイン動作が発生します。ブラウザーは同一生成元ポリシーの保護によりこの動作を制限します。もちろん、検索エンジンを使用して検索することもできます。今日話している PHP はサーバーサイド言語であり、ブラウザーとは異なり、バックエンド言語に属します。クロスドメイン参照ファイルはどのように実装されていますか? この記事では、困っている学生に役立つことを願って、いくつかの方法を紹介します。

まず、これら 2 つのホストのバックグラウンド言語は PHP であると仮定します。2 つのオンライン環境、または 1 つのオンライン環境と 1 つのローカル環境を選択するか、仮想マシンを使用することができます (これは今日の焦点では​​ありません)。 )の内容については、ご自身で解決してください)。 2 つの環境にそれぞれ a.php と b.php を作成します。 コードは次のとおりです。

a.php:

<?php
echo &#39;我是老A,呼叫老B,听到请回答:<br>&#39;;
/* 以下是源服务器的代码*/
/* 以上是源服务器的代码*/
?>
ログイン後にコピー

b.php:

<?php
header("Content-type:text/html;charset=utf-8");
echo "我是老B,叫我干嘛????";?>
ログイン後にコピー

ブラウザを使用して a.php と b にアクセスします。それぞれ php を実行して、設定せずに前の効果を表示します:

方法 1: a.php を開き、次のコードを入力します:

<?php
echo &#39;我是老a,呼叫老b,请回答:<br>&#39;;
/* 以下是源服务器的代码*/
$file_path = "此处输入b.php的访问地址";
$str = file_get_contents($file_path);
$str = str_replace("\r\n","<br />",$str);
echo $str;
/* 以上是源服务器的代码*/
?>
ログイン後にコピー

a.php に再度アクセスして、効果を確認します:

方法 2: a.php を変更し、次のコードを貼り付けます:

<?php
echo &#39;我是老a,呼叫老b,请回答:<br>&#39;;
/* 以下是源服务器的代码*/
$file_path = "此处输入b.php的访问地址";
$fp = fopen($file_path,"r");
$str = "";
$buffer = 1024;
    while(!feof($fp)){
          $str .= fread($fp,$buffer);
     }
$str = str_replace("\r\n","<br />",$str);
echo $str;
/* 以上是源服务器的代码*/
?>
ログイン後にコピー

a.php に戻って効果を確認します:

方法 3: a.php を変更し、次のコードを貼り付けます:

<?php
echo &#39;我是老a,呼叫老b,请回答:<br>&#39;;
/* 以下是源服务器的代码*/
$file_path = "此处输入b.php的访问地址";
$file_arr = file($file_path);
for($i=0;$i<count($file_arr);$i++){//逐行读取文件内容
echo $file_arr[$i]."<br />";
}
/* 以上是源服务器的代码*/
?>
ログイン後にコピー

方法 4 : a.php を変更し、次のコードを調整します:

<?php
echo &#39;我是老a,呼叫老b,请回答:<br>&#39;;
/* 以下是源服务器的代码*/
$url = "此处输入b.php的访问地址";
$ch = curl_init();
$timeout = 5;
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout)
$contents = curl_exec($ch);
curl_close($ch);
echo $contents;
/* 以上是源服务器的代码*/
?>
ログイン後にコピー

注:curl を使用する場合は、php


でcurl モジュールがオンになっていることを確認してください。

以上がPHPでドメインを越えてファイルをインポートする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート