加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 在guzzle中通过查询字符串发送数组

发布时间:2020-12-13 13:08:25 所属栏目:PHP教程 来源:网络整理
导读:Guzzle客户端默认从此代码创建 $client-get('https://example.com/{?a}',array('a' = array('c','d'))); 这个网址 https://example.com/?a=c,d 在RESTful应用程序中在查询字符串中发送数组的最佳做法是什么?问题是,如何在服务器端确定c,d是字符串还是数组?
Guzzle客户端默认从此代码创建
$client->get('https://example.com/{?a}',array('a' => array('c','d')));

这个网址

https://example.com/?a=c,d

在RESTful应用程序中在查询字符串中发送数组的最佳做法是什么?问题是,如何在服务器端确定c,d是字符串还是数组?使用方括号发送数组不是更好吗一个[] = C&安培;一个[] = d?如何设置Guzzle使用方括号?或者最好使用JSON编码变量?在服务器端我使用的是Tonic.

工作方案:
$vars = array('state[]' => array('Assigned','New'),'per_page' => $perPage,'page' => $pageNumber);
$query = http_build_query($vars,null,'&');
$string = preg_replace('/%5B(?:[0-9]|[1-9][0-9]+)%5D=/','=',$query); // state[]=Assigned&state[]=New
$client = new Client([follow instruction to initialize your client ....]);
$response = $client->request('GET',$uri,['query' => $string]);

现在您的请求中有相同的名称参数.

粪.

资料来源:http_build_query with same name parameters

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读