欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

laravel图片上传怎么验证图片的大小?

0

laravel怎么验证图片的大小
validate可以直接验证吗

riddle  316
2017-11-11 提问

1 个回答

1

验证规则

image : 验证参数是否为图片
dimensions : 验证图片尺寸,示例 dimensions:min_width=100,min_height=200
    (可选值:min_width, max_width, min_height, max_height, width, height, ratio)
size、min、max : 验证大小,示例 max:1024
    (单位 kb)

来自  https://segmentfault.com/q/1010000011966132/a-1020000011966403



[Laravel 5.3 新功能] 7. 图片尺寸表单验证规则

说明

此文章是 [Laravel 5.3 新功能] 系列的第七篇文章,图片尺寸表单验证规则。

[Laravel 5.3 新功能] 系列完整文章列表请见:分享:[Laravel 5.3 新功能] 系列文章

正文

在 Laravel 5.3 中,新增了图片尺寸验证规则,该规则名称为 dimensions ,你可以传递以下参数到验证规则里:

  • min_width:宽度比这个尺寸小的图片将会被拒绝

  • max_width:宽度比这个尺寸大的图片将会被拒绝

  • min_height:高度比这个尺寸小的图片将会被拒绝

  • max_height:高度比这个尺寸大的图片将会被拒绝

  • width:宽度不等于这个尺寸的图片将会被拒绝

  • height:高度不等于这个尺寸的图片将会被拒绝

  • ratio:宽高比不等于这个值的图片将会被拒绝

你也可以组合使用这些规则,如定义一个简单的路由规则:

// routes file
Route::get('/', function () {
    return view('form');
});

Route::post('/', 'ImageController@postImage');
<!--form.blade.php-->
<form method="POST" enctype="multipart/form-data">
    <input type="file" name="avatar">
    <input type="submit">
</form>

现在让我们来编写控制器 ImageController 的验证规则代码:

// ImageController
    public function postImage(Request $request)
    {
        $this->validate($request, [
             'avatar' => 'dimensions:min_width=250,min_height=500'
        ]);

        // or... 

        $this->validate($request, [
             'avatar' => 'dimensions:min_width=500,max_width=1500'
        ]);

        // or...

        $this->validate($request, [
             'avatar' => 'dimensions:width=100,height=100'
        ]);

        // or...

        // Ensures that the width of the image is 1.5x the height
        $this->validate($request, [
             'avatar' => 'dimensions:ratio=3/2'
        ]);
    }

这就完成图片尺寸的验证功能了,接下来只要完善好业务逻辑即可。

全文完。

链接

 本帖已被设为精华帖!
本帖由系统于 3年前 自动加精
monkey
《L01 基础入门》
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L03 构架 API 服务器》
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
 讨论数量: 0


来自   https://learnku.com/laravel/t/2670/laravel-53-new-features-7-image-size-form-validation-rules

普通分类: