Maison  >  Article  >  développement back-end  >  Comment importer des fichiers sur plusieurs domaines en php

Comment importer des fichiers sur plusieurs domaines en php

PHP中文网
PHP中文网original
2017-07-29 18:19:071607parcourir

Nous devons d’abord comprendre un concept : qu’est-ce que le cross-domain ? Par exemple, lorsque le fichier a.js sous a.com appelle le fichier b.js dans b.com, un comportement interdomaine se produit. Les navigateurs limiteront ce comportement en raison de la protection de la politique de même origine. Bien entendu, il existe des solutions. Vous pouvez utiliser les moteurs de recherche pour effectuer une recherche. Le PHP dont nous parlons aujourd’hui est un langage côté serveur. Il est différent du navigateur et appartient au langage back-end. Comment son fichier de référence inter-domaines est-il implémenté ? Cet article propose quelques méthodes, dans l'espoir d'être utile aux étudiants dans le besoin.

Tout d'abord, nous supposons que la langue de fond de ces deux hébergeurs est php. Vous pouvez choisir deux environnements en ligne, ou un environnement en ligne et un environnement local, ou utilisez une machine virtuelle (ce n'est pas notre objectif aujourd'hui, veuillez le résoudre vous-même). Créez respectivement a.php et b.php dans deux environnements. Les codes sont les suivants :

a.php :

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

b.php :

<?php
header("Content-type:text/html;charset=utf-8");
echo "我是老B,叫我干嘛????";?>

Utilisez un navigateur pour accéder respectivement à a.php et b.php pour visualiser l'effet avant de régler :

Méthode 1 : Ouvrez a.php et entrez le code suivant :

<?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;
/* 以上是源服务器的代码*/
?>

Revisitez a.php pour voir l'effet :

Méthode 2 : Modifiez a.php, collez le code suivant :

<?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;
/* 以上是源服务器的代码*/
?>

Revisitez a.php pour voir l'effet :

Méthode 3 : Modifiez un.php, collez le code suivant :

<?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 />";
}
/* 以上是源服务器的代码*/
?>

Méthode 4 : Modifiez un.php et ajustez le code suivant :

<?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;
/* 以上是源服务器的代码*/
?>

Remarque : lorsque vous utilisez curl, veuillez vous assurer que le module curl est activé dans php


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn