=将 base64 编码转换并存储到 laravel 5.4 中的图像时出错
=Error to convert and store base64 encoding to an image in laravel 5.4
我正在尝试将 base64 编码转换并存储到 laravel 5.4 中的图像。这里 $ifphoto 有 base64 值。我还使用 return 检查了它。我在 public 文件夹中有 visitor_photo 文件夹。我该如何存储它。我的控制器功能在这里。提前致谢
public function store(Request $request)
{
$visitor = new visitor() ;
$ifphoto = $request->v_photo;
if (isset($ifphoto)) {
define('UPLOAD_DIR', 'public/visitor_photo/');
$encoded_data = $ifphoto;
$img = str_replace('data:image/jpeg;base64,', '', $encoded_data );
$data = base64_decode($img);
$file_name = 'image_'.date('Y-m-d-H-i-s', time()); // You can change it to anything
$file = $file_name . '.png';
$request->v_photo->move(base_path('public/visitor_photo'), $file);
// $file = UPLOAD_DIR . $file_name . '.png';
// $success = file_put_contents($file, $data);
$visitor->v_photo = $file_name;
}
$visitor->save();
return redirect('/home');
}
下面的代码会将您的 base64
字符串作为图像存储在 app/public
文件夹中。您可以根据需要更改路径。
代码:
if (isset($ifphoto)) {
$file_name = 'image_'.date('Y-m-d-H-i-s', time()).'.png';
if($ifphoto!=""){
\Storage::disk('public')->put($file_name,base64_decode($ifphoto));
}
}
我正在尝试将 base64 编码转换并存储到 laravel 5.4 中的图像。这里 $ifphoto 有 base64 值。我还使用 return 检查了它。我在 public 文件夹中有 visitor_photo 文件夹。我该如何存储它。我的控制器功能在这里。提前致谢
public function store(Request $request)
{
$visitor = new visitor() ;
$ifphoto = $request->v_photo;
if (isset($ifphoto)) {
define('UPLOAD_DIR', 'public/visitor_photo/');
$encoded_data = $ifphoto;
$img = str_replace('data:image/jpeg;base64,', '', $encoded_data );
$data = base64_decode($img);
$file_name = 'image_'.date('Y-m-d-H-i-s', time()); // You can change it to anything
$file = $file_name . '.png';
$request->v_photo->move(base_path('public/visitor_photo'), $file);
// $file = UPLOAD_DIR . $file_name . '.png';
// $success = file_put_contents($file, $data);
$visitor->v_photo = $file_name;
}
$visitor->save();
return redirect('/home');
}
下面的代码会将您的 base64
字符串作为图像存储在 app/public
文件夹中。您可以根据需要更改路径。
代码:
if (isset($ifphoto)) {
$file_name = 'image_'.date('Y-m-d-H-i-s', time()).'.png';
if($ifphoto!=""){
\Storage::disk('public')->put($file_name,base64_decode($ifphoto));
}
}