如何使用PHP在REST中将数组作为post请求发送?

时间:2012-11-23 11:30:25

标签: php arrays rest post

这是我的代码,

$ip = array([0]=>'1.1.1.1' [1]=> '2.2.2.2')

$ux = RestClient::post($url,array('requestType'=>'Ip', 
                                                     'username' => 'user', 
                                                             'pass' =>'user',
                        'type'=>$type,
                        'ip'=>array($ip)                            
                            ));
  echo $ux->getResponse();

如何在服务器端发布'ip'?当我使用$ _POST ['id']时,它将'Array'作为字符串返回。

2 个答案:

答案 0 :(得分:7)

您无法发布数组。您必须将其序列化为字符串。 这可能是标准的表单编码方法:

ip=1.1.1.1&ip=2.2.2.2

那可能是JSON:

{ "ip" : [ "1.1.1.1", "2.2.2.2" ] }

这可能是某种XML格式:

<ips>
    <ip>1.1.1.1</ip>
    <ip>2.2.2.2</ip>
</ips>

那可能是其他的东西。

...但您需要做的事情取决于您提交的API预期。

答案 1 :(得分:0)

我怀疑你需要为你的阵列使用JSON。将其转换为json_encode( $array )