【问题标题】:Convert API URL to “data:image/png;base64" by PHP通过 PHP 将 API URL 转换为“data:image/png;base64”
【发布时间】:2016-03-20 08:31:56
【问题描述】:

以下 API URL 有一个 PNG 图像输出:

http://qrfree.kaywa.com/?l=1&s=8&d=google.com

我想将 API URL 转换为“data:image/png;base64”(DATA URL / DATA URI),类似于下面的 PHP 代码示例:

$image = ("<img src = http://qrfree.kaywa.com/?l=1&s=8&d=google.com"); // False! (only example!)
//or
$image = 'real-picture.png'; // True!

$imageData = base64_encode(file_get_contents($image));
$src = 'data:image/png;base64,'.$imageData;
echo '<img src="'.$src.'">';

但是,上面的代码适用于具有指定格式的真实图片,如果替换为 API URL,则无法读取图像路径。 代码应该如何更正?

【问题讨论】:

    标签: php base64


    【解决方案1】:

    假设对http://qrfree.kaywa.com/?l=1&amp;s=8&amp;d=google.com的网络请求返回一个image/png类型的图像,你可以这样做......

    $image = "http://qrfree.kaywa.com/?l=1&s=8&d=google.com";
    echo '<img src="data:image/png;base64,', 
        base64_encode(file_get_contents($image)),
        '">';
    

    file_get_contents() 需要有效的文件名或有效的 http(s) 请求。您的代码传入了一些以 HTML &lt;img ...

    开头的内容

    【讨论】:

      猜你喜欢
      • 2014-10-28
      • 1970-01-01
      • 1970-01-01
      • 2018-06-26
      • 2023-02-24
      • 2013-09-05
      • 2012-12-20
      • 2017-09-12
      • 1970-01-01
      相关资源
      最近更新 更多