微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

问题使用cURL PHP发布多维数组

我在使用PHP cURL发布数组时遇到问题.
我已使用POST变量成功将其他值发布到同一页面.
但这个很难搞清楚.唯一的问题是我应该如何将数据呈现给服务器.

我使用表格分析器检查了原始表格.表单分析器显示POST变量的发送方式如下:

array funddistribution' => 
     array
        204891 => '20' (length=2)
        354290 => '20' (length=2)
        776401 => '20' (length=2)
        834788 => '40' (length=2)

这些值仅用于显示示例.但它们的长度相同.

我的问题是响应服务器在我发送它们时不识别这些值:

Array(
[104786] => 20
[354290] => 20
[865063] => 20
[204891] => 20
[834788] => 20)

我的问题是:如何发送数据,以便服务器理解它?

谢谢!

解决方法:

function flatten_GP_array(array $var,$prefix = false){
        $return = array();
        foreach($var as $idx => $value){
                if(is_scalar($value)){
                        if($prefix){
                                $return[$prefix.'['.$idx.']'] = $value;
                        } else {
                                $return[$idx] = $value;
                        }
                } else {
                        $return = array_merge($return,flatten_GP_array($value,$prefix ? $prefix.'['.$idx.']' : $idx));
                }
        }
        return $return;
}
//...
curl_setopt($ch, CURLOPT_POSTFIELDS,flatten_GP_array($array));

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐