如何通过cURL中的post发送数组,以便它可以直接存储在数据库中

时间:2014-08-08 11:59:58

标签: php codeigniter curl

我正在使用CI,我通过帖子发送数组。

我正在用

这样的字符串转换它
$post_string= "";
foreach ($post_value as $k=>$v){
    $post_string = $post_string.$k.'='.$v.'&';
}
$post_string = rtrim($post_string, "&");
$post_string = trim($post_string, "&");

现在我在curl请求中传递它

  curl_setopt($ch, CURLOPT_POSTFIELDS, $post_string);
像这样。 我想将它保存到数据库然后再次我必须使它成为一个数组,以便我可以发送它 建模。

如果一个数组包含很多元素,那么这个方法就会变得很冗长。

有没有办法直接通过post发送这个数组。?

2 个答案:

答案 0 :(得分:0)

你可以试试这个:

$json = json_encode($post_value);

$ch = curl_init('http://put_the_url_here');                                                                      
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $json);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(                                                                          
    'Content-Type: application/json',                                                                                
    'Content-Length: ' . strlen($json))                                                                       
); 

$result = curl_exec($ch);

希望这有帮助!

答案 1 :(得分:0)

你可以序列化数组,然后传递..稍后..在数组中想要它时反序列化。