将PHP对象或数组从一个站点传递到另一个站点?

时间:2012-10-08 08:05:31

标签: php parameter-passing xml-rpc json-rpc

在PHP中,如何将一个Object(实际上是一个数组)从一个站点传递到另一个站点(通过不丢失其原始的对象结构和值)?

  • 如何从主机站点发送/发送
  • 不要从目标网站提取

我希望不使用HTML和网络表单直接从自动脚本传递 请提出任何建议。

2 个答案:

答案 0 :(得分:7)

最好的方法是使用json_encode()

file_get_contents('http://www.example.com/script.php?data='.json_encode($object));

另一方面:

$content = json_decode($_GET['data']);

或使用cURL发送

$url = 'http://www.example.com/script.php';
$post = 'data='.json_encode($object);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, false);
curl_exec($ch);

另一方面:

$content = json_decode($_POST['data']);

答案 1 :(得分:1)

您可以将其转换为JSON,然后将其转换回PHP对象。当它是一个数组时,这很容易。您可以在其他网站上使用json_encode($array)json_decode($json)。我会通过POST发送数据,因为GET的限制长度为:Is there a limit to the length of a GET request?