[英]Issue with file edit in PHP using file_put_contents (Laravel)
大家下午好,我遇到了一个我无法解决的奇怪问题,我希望有人能帮助我找出导致此问题的原因。 为了提供一些上下文,我允许用户在产品上存储一组图像,然后使用 laravel-stapler 包存储它们,该包按以下方式配置:
public function __construct(array $attributes = [])
{
parent::__construct($attributes);
$this->hasAttachedFile('image', [
'styles' => [
'thumbnail' => '500x500#',
'large' => '800x800#'
],
'url' => '/media/image/:id/:style/:filename',
'default_url' => '/img/category-placeholder-greyscale.jpg',
'convert_options' => [
'jpeg_quality' => 60
]
]);
}
图像保存在三个文件夹中:
../路径到图像/原始/文件名
../路径到图像/缩略图/文件名
../路径到图像/大/文件名
保存这些图像后,我使用croppie.js 来旋转和编辑它们。 在用户编辑和裁剪它们并提交后,图像作为 base64 发送到控制器,控制器在下面缩短为仅相关部分:
$imageData = $request->get('imagebase64');
list(, $imageData) = explode(';', $imageData);
list(, $imageData) = explode(',', $imageData);
$imageData = base64_decode($imageData);
// $image is loaded up through dependency injection
$path = public_path('/path' . '/large/' . $image->image_file_name);
$path2 = public_path('/path' . '/original/' . $image->image_file_name);
file_put_contents($path, $imageData);
file_put_contents($path2, $imageData);
您可能需要编辑 .htaccess 文件以授予这些文件的权限
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.