当前位置:Gxlcms > PHP教程 > phpcurl接收数据的问题

phpcurl接收数据的问题

时间:2021-07-01 10:21:17 帮助过:3人阅读

接收端是print_r($_POST);

发送端写了一个curl提交post。

$ch = curl_init();
curl_setopt_array($ch,
array(
	CURLOPT_URL => 'http://myurl/abc.php',
	CURLOPT_RETURNTRANSFER => true,
	CURLOPT_POST => true,
	CURLOPT_POSTFIELDS =>'name=abc&id=123'
)
);
$content = curl_exec($ch);
print_r($content);
echo '
=========
'; echo $content['name'];

打印出来的结果:

Array(
    [name] => abc
    [id] => 123
)
=========
A

为什么$content['name']得到的是一个字母A...

回复内容:

接收端是print_r($_POST);

发送端写了一个curl提交post。

$ch = curl_init();
curl_setopt_array($ch,
array(
	CURLOPT_URL => 'http://myurl/abc.php',
	CURLOPT_RETURNTRANSFER => true,
	CURLOPT_POST => true,
	CURLOPT_POSTFIELDS =>'name=abc&id=123'
)
);
$content = curl_exec($ch);
print_r($content);
echo '
=========
'; echo $content['name'];

打印出来的结果:

Array(
    [name] => abc
    [id] => 123
)
=========
A

为什么$content['name']得到的是一个字母A...

$content = curl_exec($ch);

这行代码拿到的 $content 是一个字符串。所以你在 echo 的时候打印的是这个字符串。
把print_r换成 var_dump 就一目了然了

var_dump($content);

得到结果:

string(44) "Array
(
    [name] => abc
    [id] => 123
)
"

echo $content['name']; // 这一句

$content是一个字符串, 'name'在这里被转乘整数0,所以是第一个字母A.

人气教程排行