PHP decode data:image/png;base64

jasonchong3329 2015-12-02 09:58:58
请大大求解....
我用file_get_contents() return 以下图 ,请问有什么办法变成data:image/png;base64 图片?




如果我直接用browser直接输入那个url 将会return script

<!DOCTYPE HTML><html><head><meta charset="UTF-8"><style type="text/css">body {font-family: Arial, Helvetica, sans-serif;color: #333333;font-size: 11px;text-align:center}span {display: none}a {vertical-align: super;}a:before {content: "Refresh"}</style></head><body><span id="58">9v0t1bjOfBu376Crfnd8/Ztsa3GSIKN3SlbUWuIrvZrFjPfBqMay3iifa99ZVvj+/1qxNaVIVRbGJl+umNImP5I50BKbpv4vW+oAW7LSBz6zOpMuaXE51y1x8thueSU3pnWCfthdeSoFWlNXvsWWjo4RtHoS1spBhVFWlIbDXNCVKvx0vmMrYfRaTbXykkCZF9Lw6l7cq/Wxai7ANgwDbp</span><span id="135">IqOdArfXN4LDKdK0APGwSJYBjHwFYRBSzafORl5PUWnKLCXhp0CQRHYXoEVAyJwbgr8ArSDcuCncxVggl1vIdPPnMs7WTkXZKFyCbvesgi8NncZYg27BPYY/HZTIJTwu2ESGB9bwFU1Ail4egPqPDyH32WqPMx8zxp8TjCfIq1sLp8FDoJZ1lgzYIPmUwgiWvlTh/VMNep7B5EOJXmO0y4</span><span id="185">2U1VLdRX1uZTx35lOo5dYpp0qCNAqvR8clrXmrwKfYSZXts4Ofs+BzVHdCfifn0kU+zdq4zSfxxAFxwiB0arUuTVMRqeNFIKmmSh3I/pUeNNHLdBB+jOpPaWh1kU/kE+Qzzke8xiufPMGVlHkxRdNIoOF2BDf6nWJ1fLH3za8FghOpM87VaC8K+pZmLR20cwX0OI0hN3UUZFpjnwj95rqt</span><span id="132">iIrCYCCwmAouJwGIisNjaC1wAAmAbqAQHwTHQBi6CK+AWGAOPwWswD2LgA5gGj8AIuAa6wRlwHBwB1WAn2CR6ZVfgraAX/AAfwQwJqIS8CfpJ4JOgnoRXHaAUbKRrKNF2kIhKzCYSV4kcAvdJ/FfUGb5Ip8i8wAlhlaiX6TibJp0igwKr6fjtOgkrnSJLI7ggT6Y3GzqFRNGWd4r/X2A83</span><span id="73">CX2K+YwafYebTpHfGvJ6icZMqSlf0Bgtp5WHt/LyaTh0EDruINO7QuWrBoOYXN8wqD1i9ecP13zGfO1pZg8OyomaY7zTL3AOtmYre130Nxo06DI1WD7q0Y9UYe5NEpP1q9FMgpZ+PJqmncuLroIxmjLhD3WKXTlSo+c1pIgZWEUWrZajdyiBLjRQeybLj5iQpx5BWFmBlcQ+NHAUjoAY8Y</span><span id="112">VBORw0KGgoAAAANSUhEUgAAAHgAAAAyCAYAAACXpx/YAAAEJ0lEQVR42u2aX0jTURTHx6w1JCIRsT9EICEiIr1IREUQPYmYCCYiQRKESUTUg4SIidiD9LAirJAIKRFkDxEigYVE9RCJ1YgQX0oiQoIQiWFjZd9LZ3A73d9vPzc329058Bn7/e65vz/3e/+cczefz+dbEazmz4eYlSYCi8B</span><span id="27">lyhrc1gBgVWoh4l/1FDOV8qTDtooTQEfpjYrbNB4EHWsLsMPuW0i/XXpkaKAleDXvpHxxKlOTH6rs6dB5td1sV/pk6acrlPrcP7VtA/SiZpNorTbPGSfkDZb+VWpZjFPzaIicBiIrCYCCwmAovAYiKwmAgsJgKLicBiIrCYCCwCi9ktsGApvwHR+2AyjibXiwAAAABJRU5ErkJggg==</span><script type="text/javascript">(function(f,k){function a(){for(var a=arguments,e="",c=0;c<a.length;c++)e="[object Function]"===Object.prototype.toString.call(a[c])?e+a[c]():e+a[c];if(k&&(l=k.parent.top.frames.vrlWindowID)&&22177===l.windowID)return e}function n(){return a(p,"1")}function q(){return a(r,"3")}function s(){return a(q,"2")}function t(){return a(u,"2")}function v(){return a(w,"5")}function x(){return a("1")}function y(){return a(v,"5")}function u(){return a(z,"3")}function A(){return a(B,"3")}function z(){return a(C,
"1")}function D(){return a(E,"7")}function B(){return a(t,"1")}function F(){return a("3")}function G(){return a(x,"1")}function E(){return a(A,"5")}function p(){return a(D,"3")}function H(){return a(y,"8")}function w(){return a(n,"8")}function I(){return a(s,"3")}function C(){return a(G,"2")}function r(){return a(F,"3")}var g,d,h,b,l;g=f.body;d=["img",{src:function(){for(var a=0,e="",c=arguments,b,d=0;d<c[1].length;d++)b=c[0].substring(a,a+=parseInt(c[1][d])),e+=f.getElementById(b).textContent;return"data:image/png;base64,i"+
e}(a(function(){return a(H,"2")},"7"),a(function(){return a(I,"2")},"2"))},"a",{href:"#"}];for(b=0;b<d.length;b++)if(b&1){for(var m in d[b])h.setAttribute(m,d[b][m]);g.appendChild(h)}else h=f.createElement(d[b]);(function(a){a.onclick=function(){f.location.reload(!0);return!1}})(g.lastChild)})(document,parent);</script></body></html>

以上script将会直接return data:image/png;base64图片
...全文
1212 点赞 收藏 4
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
xuzuning 2015-12-02
你给的 url 有 js 错,什么都不显示 请给出正确的 url
回复
jasonchong3329 2015-12-02
原始的url

https://vrl.lta.gov.sg/lta/vrl/action/captchaImg?FUNCTION_ID=F0501015ET

这个是我直接在browser输入url return的资料
回复
xuzuning 2015-12-02
请给出原始的 url
回复
jasonchong3329 2015-12-02
hi xuzuning,

这个是我的url : https://i-solutions.biz/readcontent/read.php
我要读取的url : https://vrl.lta.gov.sg/lta/vrl/action/pubfunc?ID=EnquireTransferFee
读取captcha的url : https://vrl.lta.gov.sg/lta/vrl/action/captchaImg?FUNCTION_ID=F0501015ET

你会看到当你直接browser captcha url的时候会出现js error:
Uncaught TypeError: Cannot read property 'length' of undefined

原因如下: windowID no match
if(k&&(l=k.parent.top.frames.vrlWindowID)&&226786===l.windowID)


有几个问题不明白的是

做法 1.:
$b = file_get_contents("https://vrl.lta.gov.sg/lta/vrl/action/captchaImg?FUNCTION_ID=F0501015ET");
echo $b;
显示

*小弟不明白为什么会return这些乱码而不是像我在browser那样return js回来?

做法 2.:
在browser直接输入captcha url, 然后我把return回来的js ,
把 if(k&&(l=k.parent.top.frames.vrlWindowID)&&226786===l.windowID) 换成 if(1==1)
echo出来 就可以直接显示 base64图片



回复
相关推荐
发帖
PHP
创建于2008-08-27

1.9w+

社区成员

“超文本预处理器”,是在服务器端执行的脚本语言,尤其适用于Web开发并可嵌入HTML中。PHP语法利用了C、Java和Perl,该语言的主要目标是允许web开发人员快速编写动态网页。
申请成为版主
帖子事件
创建了帖子
2015-12-02 09:58
社区公告
暂无公告