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

2022-08-30 23:59:45

我想使用Laravel将图像转换为base 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=


答案 1

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

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

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

答案 2

它通过以下方式为我工作:

$image = base64_encode(file_get_contents($request->file('image')));

我消除了这部分->pat‌​h();


推荐