2017 © Pedro Peláez
 

library imagevalidator

Custom Laravel Validator for image dimensions

image

yaravel/imagevalidator

Custom Laravel Validator for image dimensions

  • Tuesday, July 28, 2015
  • by yaravel
  • Repository
  • 3 Watchers
  • 3 Stars
  • 64 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 1 Versions
  • 0 % Grown

The README.md

Image Validator Rules For Laravel 5

Extra Laravel validation rules for dealing with images., (*1)

Latest Stable Version Total Downloads, (*2)

, (*3)

Installation

Install the package through Composer., (*4)

composer require "cviebrock/image-validator:2.0.*@beta"

Note: Version 2.0 of this package is designed to work with Laravel 5. If you are using Laravel 4, then checkout the 1.x branch and use the latest version there., (*5)

Add the following to your providers array in app/config/app.php:, (*6)

'providers' => array(
    'Cviebrock\ImageValidator\ImageValidatorServiceProvider',
),

, (*7)

Usage

image_size

Use it like any Validator rule:, (*8)

$rules = array(
    'my_image_field' => 'image_size:<width>[,<height>]',
);

The values for width and _height can be integers, or integers with a modifier prefix:, (*9)

  • 300 or =300 means the dimension must be exactly 300 pixels.
  • <300 means the dimension must be less than 300 pixels
  • <=300 means the dimension must be less than or equal to 300 pixels
  • >300 means the dimension must be greater than 300 pixels
  • >=300 means the dimension must be greater than or equal to 300 pixels
  • 200-300 means the dimension must be betweem 200 and 300 pixels (inclusive)
  • * means the dimension can be any value

If you only pass one value, it's assumed to apply to both dimensions (i.e. a square image with the given dimensions)., (*10)

image_aspect

$rules = array(
    'my_image_field' => 'image_aspect:<ratio>',
);

The value for ratio represents width ÷ height and be either a decimal or two values (width, height; both integers):, (*11)

  • 0.75
  • 3,4

The value (or first value, if providing height and width) can also be prefixed with a tilde ~ character, in which case the orientation doesn't matter:, (*12)

  • ~3,4 means the image can have an aspect ratio of either 3:4 or 4:3.

Note that you may run into issues with floating point rounding., (*13)

, (*14)

Examples


// logo must be 300px wide by 400px tall $rules = array( 'logo' => 'required|image|image_size:300,400', ); // logo must be less than or equal to 300x300px. $rules = array( 'logo' => 'required|image|image_size:<=300', ); // logo must be 300px wide but can be any height $rules = array( 'logo' => 'required|image|image_size:300,*', ); // logo must be at least 100px tall and 200-300 pixels wide (inclusive) $rules = array( 'logo' => 'required|image|image_size:>=100,200-300', ); // logo must be square $rules = array( 'logo' => 'required|image|image_aspect:1', ); // logo must be ready for the big screen TV :) $rules = array( 'logo' => 'required|image|image_aspect:16:9', );

, (*15)

Bugs, Suggestions and Contributions

Please use Github for bugs, comments, suggestions., (*16)

  1. Fork the project.
  2. Create your bugfix/feature branch and write your code.
  3. Create unit tests for your code:
    • Run composer install --dev in the root directory to install required testing packages.
    • Add your test methods to tests/ (either adding to an existing test file, or creating a new one).
    • Run vendor/bin/phpunit to confirm the new (and all previous) tests pass.
  4. Commit your changes (and your tests) and push to your branch.
  5. Create a new pull request against the imagesize-validator master branch.

Please note that you must create your pull request against the master branch. If you have a fix for the Laravel 4 version of the package, make your pull request against the 1.x branch., (*17)

, (*18)

Eloquent-Sluggable was written by Colin Viebrock and released under the MIT License. See the LICENSE file for details., (*19)

Copyright 2013 Colin Viebrock, (*20)

Thanks

Lots of thanks to https://bitbucket.org/hampel/validate-laravel for the structure of creating a package to add validator rules to Laravel, and setting up useful unit tests., (*21)

The Versions

28/07 2015

dev-master

9999999-dev https://github.com/yaravel/imagevalidator

Custom Laravel Validator for image dimensions

  Sources   Download

MIT

The Requires

 

The Development Requires

by Alfonzo Diez

laravel validator image