php curl接收数据的问题
程序员文章站
2024-01-26 20:02:34
...
接收端是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.