PHP中json传递请求字符串网址函数http_build_query()与parse_str(),将POST参数组转换拼接成GET请求链接
2019-04-04 10:36
471 查看
版权声明:保哥后院出品,为避免断章取义走弯路,请注意环境配置和时间。 https://blog.csdn.net/weixin_41290949/article/details/89014723
http_build_query()函数的作用是使用给出的关联(或下标)数组生成一个经过 URL-encode 的请求字符串。
很多项目中的数据对接都是json数据格式进行传递的,如何将一组JSON数据转化为网址参数,进行请求,如:
- 请求参数的传递
$loginParams = '{"phone":"13099439943","currentTimeMillis":"1494466036877","cust_id":"Co1z7hV167Faqkk5WIohVdhaHj+mORib","isNewUser":"0"}';
- 转化json为数组:
$newarr = json_decode($loginParams, true);
- http_build_query()函数生成字符串
$newurl = http_build_query($newarr);
- 组合字符串,传递参数
echo "https://icbc.hhmidea.com/?" . htmlspecialchars($newurl);
- 完整代码:
$loginParams = '{"phone":"13099439943","currentTimeMillis":"1494466036877","cust_id":"Co1z7hV167Faqkk5WIohVdhaHj+mORib","isNewUser":"0"}';//AES加密登录参数; $newarr = json_decode($loginParams, true);echo "<br>"; $newurl = http_build_query($newarr);echo "https://icbc.hhmidea.com/?" . htmlspecialchars($newurl);
htmlspecialchars()可以避免出现HTML显示的乱码。
- 回传参数的处理
parse_str($newurl, $arr); $newjson = json_encode($arr); echo $newjson;
相关文章推荐
- PHP使用http_build_query()构造URL字符串的方法(可将POST参数组转换拼接成GET请求链接)
- 速战速决 (6) - PHP: 获取 http 请求数据, 获取 get 数据 和 post 数据, json 字符串与对象之间的相互转换
- php函数http_build_query数组变为GET形式字符串方式,parse_str将get参数形式的字符串还原成数组
- 用http_build_query()函数在curl处理post请求参数
- PHP的parse_str() 函数 和http_build_query()函数
- http_build_query()就是将一个数组转换成url 问号?后面的参数字符串,并且会自动进行urlencode处理,及它的逆向函数
- 写给Lewis的-URL处理几个关键的函数parse_url、parse_str与http_build_query
- php使用http_build_query,parse_url,parse_str创建与解析url
- URL处理两个关键的函数parse_str与http_build_query
- 在servlet中GET请求可以通过HttpServletRequest的getRequestURL方法和getQueryString()得到完整的请求路径和请求所有参数列表,POST的需要getPa
- php使用http_build_query,parse_url,parse_str创建与解析url
- WebApi 的 HttpGet 和 HttpPost 传递多个参数对象的Json和Dynamic方法
- URL处理几个关键的函数parse_url、parse_str与http_build_query
- ajax参数传递之[HttpGet]/[HttpPost]/[HttpPut]/[HttpDelete]请求
- httpurlconnection post 和GET 分别传递2个参数给后台,返回JSON 解决乱码问题
- php使用http_build_query,parse_url,parse_str创建与解析url详解
- ctypes 加载的so库中函数参数的字符串传递问题(str与bytes转换)
- SpringMVC中使用Ajax POST请求以json格式传递参数服务端通过request.getParameter("name")无法获取参数值问题分析
- ajax参数传递之[HttpGet]/[HttpPost]/[HttpPut]/[HttpDelete]请求
- php之parse_url 、parse_str 、http_build_query