php - Base 64 编码图像
问题描述
我想对现有图像进行编码,这是我当前的功能:
public function convertUploadedFileToBase64(UploadedFile $file) {
return base64_encode(file_get_contents($file->getClientFilename()));
}
所以我知道 $file 是一个正确的变量,我使用的是 Postman,它通过 var_dump 向我显示 $file 包含图像,但看起来编码不起作用。
在此之前,我使用了一个函数来检查文件是否为有效图像:
public function checkIfUploadedFileIsValid(UploadedFile $file)
{
$imageInfo = getimagesize($file->file);
if ($imageInfo['mime'] == ("image/png") ||
$imageInfo['mime'] == ("image/jpeg") ||
$imageInfo['mime'] == ("image/gif") ||
$imageInfo['mime'] == ("image/psd") ||
$imageInfo['mime'] == ("image/bmp")) {
return $file;
}
throw new \Exception("Image Invalid", 400);
}
这确实有效,但 base64 编码似乎是错误的。
非常感谢!
解决方案
我不知道您正在使用什么框架,但似乎 $file->file 是上传文件的路径,因此您可以使用
返回 base64_encode(file_get_contents($file->file));
希望能帮助到你
推荐阅读
- jenkins - 如果其他条件,Jenkinsfile 声明变量
- java - 有没有办法在 TimerTask 运行时检查某些东西
- docker - 无法使用 Docker-compose 创建远程解释器
- php - 在前端随处自定义 WooCommerce 产品名称
- html - 添加填充/定位时,ASP.Net Core 模型绑定表单被挤压
- python - 给定有序对(跳数)的子列表列表,我如何计算通过列表的路径数(每个路径都是跳数序列)
- arrays - 使用 && 运算符优化数组重叠查询
- reactjs - 如何在 Formik 中集成我的提交功能
- sharepoint - SharePoint Rest API 如何获取访问令牌?
- django - 我有一个关于 django rest auth 定制的问题