使用Laravel将图像转换为64位字符串

2022-05-19 00:00:00 encode base64 php laravel

我想用Laravel将图像转换为64进制。我是从一张表格中得到这张图片的。 我在我的控制器中尝试了这个:

public function newEvent(Request $request){
    $parametre =$request->all();

    if ($request->hasFile('image')) {
        if($request->file('image')->isValid()) {
            try {
                $file = $request->file('image');
                $image = base64_encode($file);
                echo $image;


            } catch (FileNotFoundException $e) {
                echo "catch";

            }
        }
    }

我只收到这个:

L3RtcC9waHBya0NqQlQ=


解决方案

Laravel的$request->file()不返回实际的文件内容。它返回UploadedFile类的一个实例。

您需要加载实际文件才能进行转换:

$image = base64_encode(file_get_contents($request->file('image')->pat‌​h()));

相关文章