我编写了一个简单的代码,以了解如何使用cURL接收$ _POST数据:
a.php只会
$close = array('request'=>'1');
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "b.php");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $close);
$result = curl_exec ($ch);
curl_close ($ch);
echo $result;
b.php
echo ($_POST);
我跑了a.php
但没有发生任何事。我也尝试了$_POST["request"]
但也没有发生任何事情。
更新
我发现了问题:
curl_setopt($ch, CURLOPT_URL, "b.php");
更改为
curl_setopt($ch, CURLOPT_URL, "http://localhost/php/b.php");
它解决了这个问题。但是,当我使用不同的主机时,这在将来真的很不方便。我将不得不回来并更改所有使用cURL的网址。我希望有办法解决这个问题。
更新2 如果cURL是一种矫枉过正,是否有另一种方法可以将POST或GET请求从一个php文件发送到另一个php文件?