我有一个数据库表,其中图像存储为字符串。我正在尝试获取此字段内容并将其作为图像添加到ftp服务器。
$data = $tbExpenseFile->full_image;
$hash = Str::random(16);
\File::makeDirectory(storage_path().'/storage/'.$hash);
$tbFile = storage_path().'/storage/'.$hash.'/'.$tbExpenseFile->full_image_name;
\File::put($tbFile, $data);
它正常工作,但是没有完整上传更大的图像,图像中的1/4是可见的,剩下的部分是灰色的。在ftp中,这些图像大小为1048576 == 1mb。
我正在试图弄清楚可能是什么限制,也许是数据库字符串读取限制,因为laravel put方法使用file_put_contents,所以我认为问题不存在。
答案 0 :(得分:0)
我发现问题,需要处理数据库配置中的PDO设置:
'options' => array(PDO::MYSQL_ATTR_MAX_BUFFER_SIZE => 16777216)