php - 如何将 BLOB 图像存储到临时文件中?
问题描述
我目前正在将图像存储到数据库中,我可以使用以下代码将它们显示在网页上:
<?php
$type = "image/png"; //or the actual mime type of the file
$base64blob = base64_encode($portal['image']); //encode to base64
$datauri = "data:$type;base64,$base64blob";
?>
问题是我需要将它保存为临时文件,以便可以使用 phpspreadsheet 在以下代码中使用它,其中 setpath 行将是临时文件:
$drawing = new \PhpOffice\PhpSpreadsheet\Worksheet\Drawing();
$drawing->setName('Logo');
$drawing->setDescription('Logo');
$drawing->setPath('./images/officelogo.jpg');
$drawing->setHeight(36);
我是新手,有什么办法吗,谢谢
解决方案
$ext = explode("/",$type);
$filename = './images/'.uniqid(rand(), true) . '.'.$ext[1];
file_put_contents($filename,$portal['image']);
$drawing->setPath($filename);
// make Spreadsheet
unlink($filename);
推荐阅读
- angular-material - 角度材料选择列表 - 可以通过键盘选择/取消选择禁用的选项
- c# - 如何创建任务栏上方且没有滚动条的全屏控制台?
- visual-studio-code - Visual Studio Code - 启动调试操作
- excel - 如何在 VBA 中使用单元格格式设置 VLookUp?
- c# - cURL 到带有参数的 C# HttpWebRequest
- python - 在熊猫中如何删除数字序列中的列?
- php - 选择第二个值
- php - 从由字符和具有相同字符的整数组成的字符串中添加整数
- go - 使用结构解析 YAML
- python - 将列表值插入不同的行,同时保留其他列的最新值