php 数据:从base64字符串中消失

8ftvxx2r  于 2023-02-11  发布在  PHP
关注(0)|答案(1)|浏览(192)

我有一个base64的图像,我需要通过php显示。它将被用于wordpers/woocommerce网站,在购物车。
字符串是正确的,当直接插入到纯html img标记时,工作正常。字符串的开头如下:数据:图像/png;64进制...
但是当它通过php以src的形式插入时,它不包含开头的"data:"单词,它显示为:图片/png; 64进制
我已经用普通的echo测试了这个字符串,它确实包含了数据:当刚刚回显时,但是一旦它被放置在src或href中,data:就会消失。
我不知道为什么会发生这种情况,搜索结果没有任何有意义的信息。
添加的代码片段:

$img = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAyAAAAImCAYAAACrXu7BAAAgAE................";
    echo '<img src="'.$img.''" />';

数据:消失,回声为:

<img src="image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAyAAAAImCAYAAACrXu7BAAAgAE................" />

但如果我这么做

$img = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAyAAAAImCAYAAACrXu7BAAAgAE................"
    echo $img;

它的工作原理和回声如下:

data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAyAAAAImCAYAAACrXu7BAAAgAE................
xxb16uws

xxb16uws1#

我发现问题了。
问题确实出在WordPress/WooCommerce上,特别是购物车,而不是语法错误。
该问题旨在:wp_过滤器_post_kses
我会把这件事记为已经解决...
感谢那些实际上试图帮助和理解代码片段不是真正的代码,并且没有语法错误的人,正如我所说的。
也许人们在试图帮助别人的时候不应该过于迂腐?只是一个想法...

相关问题