首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么PHP解析_POST数组的输入数据

为什么PHP解析_POST数组的输入数据
EN

Stack Overflow用户
提问于 2014-11-17 16:36:03
回答 1查看 110关注 0票数 0

PHP 5.6.2

我有输入脚本curlTest.php

代码语言:javascript
复制
<?php
print_r(array($_GET, $_POST, file_get_contents('php://input')));
?>

写我运行的内容:

代码语言:javascript
复制
<?php
$url = 'http://localhost/curlTest.php';
$data = 'test-data';

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_exec($ch);
?>

我有这样的产出:

代码语言:javascript
复制
Array
(
    [0] => Array
        (
        )

    [1] => Array
        (
            [test-data] => 
        )

    [2] => test-data
)

为什么php在_POST中解析我的输入数据?但是在PHP 5.2.6上的另一台机器上,我有另一个输出:

代码语言:javascript
复制
Array
(
    [0] => Array
        (
        )

    [1] => Array
        (
        )

    [2] => test-data
)

有什么想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-11-17 16:42:18

你在做:

代码语言:javascript
复制
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);

设置POSTFIELDS会自动告诉curl你在写一篇文章。

post/get数据是关键:值对。您已经($data)提供了PHP作为没有值的键进行解析的内容,因此基本上得到了$_POST['test-data'] = null。POST数据通过STDIN传递给脚本,这就是为什么php://input向您展示测试数据的原因。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26977369

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档