vector88/laravel-validation

Laravel 验证工具

1.0.4 2016-08-21 05:28 UTC

This package is not auto-updated.

Last update: 2024-09-23 06:43:31 UTC


README

本包提供 Laravel 的验证工具。这些工具旨在通用和可扩展,允许在不同的系统中重用相同的验证规则集。

安装

使用 composer 命令行界面添加包

composer require vector88/laravel-validation

将服务提供者添加到 config/app.php

[
	...

	'providers' => [
		...,
		Vector88\Laravel\Validation\ValidationServiceProvider::class,
		...,
	],

	'aliases' => [
		...,
		'Validation' => Vector88\Laravel\Validation\Facades\Validation::class,
		...,
	],

	...

]

示例

App/Http/routes.php

Route::get('/laravel', 'ValidationController@laravel' );
Route::get('/angular', 'ValidationController@angular' );
Route::get('/validator', 'ValidationController@validator' );

App/Http/Controllers/ValidationController.php

<?php

namespace App\Http\Controllers;

use Validator;
use Validation;

class ValidationController extends Controller
{
	
	protected $validation;
	
	public function __construct() {
		$this->validation =
			Validation::make()
				->field( 'name' )->isRequired()->isString()->hasMin( 4 )->hasMax( 16 )
				->field( 'age' )->isInteger()->hasMin( 0 )->hasMax( 120 );
	}
	
	public function angular() {
		return $this->validation
			->provide( 'angular' )
			->allAttributes();
	}
	
	public function laravel() {
		return $this->validation
			->provide( 'laravel' )
			->allAttributes();
	}
	
	public function validator() {
		$data = [ 'name' => 'Jon', 'age' => 148.7 ];
		$rules = $this->validation->rules();
        $validator = Validator::make( $data, $rules );
		return $validator->errors();
	}
}