【问题标题】:PHP Data- URI to Image [duplicate]PHP数据-图像的URI [重复]
【发布时间】:2013-09-14 03:44:33
【问题描述】:

我有 Data URI(image),我正在尝试使用 php 保存,我的代码是

$filename = 'test.png';
$fp = fopen("user_images/".$filename,"w");
fwrite($fp, base64_decode($_POST['strDataURI']));
fclose($fp);

它总是给我损坏的图像,但是当我在 Javascript

中使用时我得到正确的图像
document.write('<img src="'+strDataURI+'"/>');

【问题讨论】:

  • 什么是$_POST['strDataURI']
  • $_POST['strDataURI'] 是
  • data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAoAAAAHgCAYAAAA10dzkAAAEvklEQVR4nO3BAQ0AAADCoPdPbQ43oAAAA
  • (我可能只是试试这个:fwrite($fp, file_get_contents($_POST['strDataURI']);;认为它应该可以在最新版本的 PHP 中工作,它可以处理没有双斜杠的数据 URI。)
  • 因为 data uris 有一个 mime 类型的前缀,你需要在解码 base 64 字符串之前删除它。

标签: php javascript canvas


【解决方案1】:

鉴于我相信 PHP 现在支持 (>5.4.17 )“正确的”数据 URI(即在旧版本中没有必要的双斜杠),我可能会试试这个:

fwrite($fp, file_get_contents($_POST['strDataURI']);

...在 PHP 5.4.17 中使用我刚刚使用生成的数据 uri 编写的测试脚本from this online tool 似乎可以正常工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-15
    • 1970-01-01
    • 1970-01-01
    • 2011-08-12
    • 1970-01-01
    • 2014-04-15
    相关资源
    最近更新 更多