Base 64编码图像[关闭]

问题描述 投票:0回答:1

我想编码现有的图像,这是我目前的功能:

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编码似乎是错误的。

非常感谢你!

php postman slim
1个回答
3
投票

我不知道你正在使用什么框架,但似乎$ file-> file是上传文件的路径,所以你可以使用

return base64_encode(file_get_contents($ file-> file));

希望能帮助到你

© www.soinside.com 2019 - 2024. All rights reserved.