我从Feed收到一个文件,它是二进制格式。
此代码将在屏幕上显示图像
header("Content-type: image/png");
print $image;
然而,我尝试了许多不同的方法来保存.png,例如imagepng(),但似乎没有任何工作
二进制Feed的开头很长,但开始是......
‰PNG IHDR,,ö"€IDATxÚì½w”×uîɲ¯,K²_²×{Ë^~ÿ½û)‹T°¨kI¤ˆ<9çäLd$E*X™ T@™ÈÌ`òôL§ÊÕÕ©r>oŸsº{¢|%‚âëZß*zª{zºëWßÞ'ì3U¶ÊVÙ®ë6§òT¶ÊV°²U¶ „•²U¶ „•²U ¬l•²U ¬l•ae«l•á»nÿ@U¶ÊVð¹Ù[ÂÊVðOŽYÙÍ÷ý ¸W ß¾*—Te«@ø{¨Þd+'°´áÿéòÀÊ|Л
非常感谢任何帮助
答案 0 :(得分:1)
使用imagecreatefromstring()
获取图片资源,然后您可以使用imagepng()
保存它。
答案 1 :(得分:0)
假设浏览器在第一个示例中显示图像,只需将其调整为文件下载:
<?php
header('Content-Description: File Transfer');
header('Content-Type: image/png');
header('Content-Disposition: attachment; filename=Image.png');
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
header('Content-Length: ' . strlen($image));
ob_clean(); // Just in case you have output buffers enabled
flush();
print $image;