Maison  >  Article  >  développement back-end  >  Comment inclure des fichiers PHP provenant d'un autre serveur ?

Comment inclure des fichiers PHP provenant d'un autre serveur ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-09 10:51:021059parcourir

How to Include PHP Files From Another Server?

Inclure des fichiers PHP provenant d'un autre serveur

Considérez un scénario dans lequel vous avez deux fichiers PHP sur des serveurs distincts. Vous devez inclure le deuxième fichier du premier.

// 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";

Cependant, vous rencontrez un problème lorsque vous tentez d'inclure le fichier distant.

Comprendre les restrictions

Par défaut, la configuration de PHP interdit d'inclure des fichiers provenant de serveurs distants. Cette restriction est imposée pour des raisons de sécurité. Pour inclure des fichiers distants, vous devez activer la directive allow_url_include dans php.ini. Cependant, ceci est généralement désactivé et considéré comme une mauvaise pratique en raison des risques de sécurité potentiels.

Solution alternative : file_get_contents()

Si vous avez besoin d'obtenir des données à partir d'un fichier sans exécuter de code PHP, vous pouvez utiliser la fonction file_get_contents(). Il renvoie le contenu du fichier distant sous forme de texte brut.

Pour utiliser cette méthode, modifiez le script distant pour générer les données nécessaires dans un format que le script local peut traiter (par exemple, JSON). Ensuite, dans le script local :

$remoteData = file_get_contents("http://www.sample.com/includeThis.php");
$data = json_decode($remoteData);

Cette solution permet de récupérer les données du fichier distant sans compromettre la sécurité.

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