安裝:
需求:
PHP >= 5.4
Fileinfo 擴展
GD庫 >= 2.0
Imagick 擴展 >=6.5.7
composer安裝:
composer require intervention/image
基本使用:使用 ImageManager 的靜態版本
use Intervention\Image\ImageManagerStatic as Image;
Image::configure(array('driver' => 'imagick')); ------- api中未出現此方法
Image::make('public/foo.jpg');
上代碼------------------:
public function test2(Request $request) { $this->validate($request,[ 'name' =>'required', 'content' =>'required', ]); if($request->hasFile('img_file') && $request->file('img_file')->isValid()){ // 圖片 重新命名 $img_name = uniqid(mt_rand(100000,999999)) . '.' . $request->img_file-> extension(); $foldername=date('Y-m-d'); //文件夾名稱 $folderpath="./uploads/{$foldername}"; //文件夾路徑 if(!is_dir($folderpath)){ $data = mkdir($folderpath,0777,true); } // 圖片地址 $image_file = $folderpath .DIRECTORY_SEPARATOR. $img_name; // 移動圖片並生成縮略圖 Image::make($request->img_file)->resize(100, null, function($constraint){$constraint->aspectRatio();})->save($image_file); // dump($image);die; // 添加數據表路徑 $path = $image_file; }else{ return "<script> alert('上傳圖片不能為空!')</script>"; } // 過濾非數據表字段 $data = $request->except('_token','img_file'); // 添加到數據表 $info = [ 'title' => $data['name'], 'content' => $data['myany'], 'image_path' =>$path, 'createtime' =>time(), ]; $data = Stus::insert($info); // 添加成功跳轉 if($data){ return redirect('test1'); } }
效果: