PHP接口使用urlencode的一些坑

2019-04-19sad creeper

刚刚对接了,去哪网的国际机票 ,给对方传送参数时候需要json数据urlencode编码一下 ,遇到了几个坑记录下来。

首先,一个参数是需要去哪网方的一个数据,priceKey = ‘MW4MFFYz8%2FnhpiYVICQ%2F1ItB5iiCSgaqhhT4pPLRJZrjT6UF8wGGlJZi4R0iUaAKg2FH1MslOzoblnqXiAkFLyn0a%2B6gN%2FbBbtNakskX1S9rPS6A0EbVX3Fe%2FUrBwCaYSvc7rW5KfBj7j81FowpRGSOzkEVXCkL6inWYHIW0EzZaWf6MPRj8RFaq7wIV%2Bnr%2BBPJfj4%2FBrrSssHJUz%2BpvJxmQrWCiLjDcpa6BuHSUfASnYNrD1FJxRQ%3D%3D’

对方urlencode传送过过来的是urlencode后的数据 但是PHP接收到自动转义 ,再给对方发送时候,需要urlencode会编码错误。

第二个比较坑的是,接送json_encode的时候, /前会帮你加转义\ 需要加参数JSON_UNESCAPED_SLASHES json_encode($arr,JSON_UNESCAPED_SLASHES)

所以需要 接收到priceKey后先 priceKey urlencode一下 再json_encode($arr,JSON_UNESCAPED_SLASHES) 问题解决

阅读 771 评论