我需要在我的小树枝模板中显示一张图片。我在我的控制器中得到了这张图片,作为base64编码的字符串,所以我在服务中创建了一个个人函数来解码base64:
public function base64ToImg($base64)
{
$img_str = 'image/png;base64,'.$base64;
$img_data = explode(";",$img_str);
$type_img = $img_data[0];
$final_img = explode(",",$img_data[1]);
header("Content-type:".$type_img);
return base64_decode($final_img[1]);
}
在我的控制器中:
$logo = $this->container->get('services.utils')->base64ToImg($mydata);
echo $logo;
die();
它是有效的,但当我用render
将$logo
发送到我的模板时,图片不会用{{ logo }}
显示。我也试着创建自己的小树枝函数,但也不起作用。。。
有解决方案吗?
感谢
如何在模板中显示图像?如果您使用base64编码的字符串,您可能需要在图像标记中使用data:image/png;base64,encoded string
。
<img alt="Embedded Image" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIA..." />
其他选项是保存到文件或使用脚本显示图像
<img alt="Embedded Image" src="/controller/image?id=foo" />