比如有时候我们写了一个播放器页面,然后我要给这个播放器页面传递播放地址,像腾讯 爱奇艺的地址都是带参数的,比如:
腾讯的:<iframe frameborder="0" width="640" height="498" src="https://v.qq.com/iframe/player.html?vid=n0022hzw23o&tiny=0&auto=0" allowfullscreen></iframe>
爱奇艺的:<iframe src="http://open.iqiyi.com/developer/player_js/coopPlayerIndex.html?vid=a00e5d4905c215ec45b7236d961f789f&tvId=7052757809&accessToken=2.f22860a2479ad60d8da7697274de9346&appKey=123456&appId=1368&height=100%&width=100%" frameborder="0" allowfullscreen="true" width="100%" height="100%"></iframe>
一般我们只要传src过去就可以了,比如play.html?src=https://v.qq.com/iframe/player.html?vid=n0022hzw23o&tiny=0&auto=0
结果你PHP解析的时候发现好几个参数:src,tiny,auto,处理完以后就变成src=https://v.qq.com/iframe/player.html?vid=n0022hzw23o
腾讯的还好,还能播放,但是爱奇艺就直接嗝屁了,因为他还要appid。。。。。
好了,为了大家少走弯路,直接上解决方案:
1、PHP使用urlencode
2、java使用encodeURL
其他自己找去,例如:
<?php $url=urlencode("http://d.com?id=1?ac=2"); ?> play.html?src="<?php echo $url;?>"
顺便说一下,腾讯的要30秒广告,爱奇艺只要10秒,妮玛,必须抛弃腾讯视频!
OK,降龙掌打完收工!