我试图使用php include从一个域到另一个域获取变量的值,但它无法正常工作。
firstdomain.com/test1.php
<?php
$i=10;
?>
seconddomain.com/test2.php
<?php
include_once "firstdomain.com/test1.php";
echo $i;
?>
我已启用allow_url_include
,因此我现在可以将 firstdomain.com/test1.php 文件包含在 seconddomain.com/test2.php 中,但是我如何获得$i
的价值?
答案 0 :(得分:0)
您不能包含跨域的PHP代码,因为远程服务器在发送文件之前会对其进行评估。
无论如何,您可以让第一个脚本输出您需要的变量,例如作为JSON-String并再次将输出读入JSON对象。
firstdomain.com/foo.php
<?php
$data["i"] = 1;
echo json_encode($data);
?>
输出(到您的Web浏览器以及您的其他PHP脚本):
{"i":1}
seconddomain.com/bar.php
<?php
$data = json_decode(file_get_contents("http://firstdomain.com/foo.php"));
echo $data["i"];
?>
输出:
1