http - php 接口参数值中带有&符号怎么办

查看:852
本文介绍了http - php 接口参数值中带有&符号怎么办的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

比如对方给我提供了一个接口,我需要用这个接口去获取信息,
接口:http://www.xxx.com/getMsg
参数:name,url,id

假如name=John, url= http://www.xxx.com/article?aid=1&name=Show,id=1

那么接口字符串str拼接起来就是
http://www.xxx.com/getMsg?name=John&url=http://www.xxx.com/article?aid=1&name=Show&id=1

然后file_get_contents(str)发送

这里就有个问题了,
对方取到的数据是

name=John
url=http://www.xxx.com/article?aid=1
id=1

url少了&name=Show

请问如何解决

解决方案

将url参数使用urlencode($url);转义下
由于&在url中属于参数分隔符,直接传带有&符号的参数,服务器解析不正确

这篇关于http - php 接口参数值中带有&符号怎么办的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆