[李景山php]每天laravel-20160929|ValidatesWhenResolved.php
2016-07-27 09:10
330 查看
<?php namespace Illuminate\Validation; use Illuminate\Contracts\Validation\ValidationException; use Illuminate\Contracts\Validation\UnauthorizedException; // use name space /** * Provides default implementation of ValidatesWhenResolved contract. */ trait ValidatesWhenResolvedTrait {// other type of class can be use in more please /** * Validate the class instance. * * @return void */ public function validate() { $instance = $this->getValidatorInstance();// get Validator Instance if (! $this->passesAuthorization()) {// determine Authorization $this->failedAuthorization(); } elseif (! $instance->passes()) {// passes $this->failedValidation($instance);//failed Validation } }// Validate the class instance. /** * Get the validator instance for the request. * * @return \Illuminate\Validation\Validator */ protected function getValidatorInstance() { return $this->validator(); }//Get the validator instance for the request. /** * Handle a failed validation attempt. * * @param \Illuminate\Validation\Validator $validator * @return mixed * * @throws \Illuminate\Contracts\Validation\ValidationException */ protected function failedValidation(Validator $validator) { throw new ValidationException($validator); }// yes we need do some thing for the bad handle, the best way is throw exception // so this function name is failed validation /** * Determine if the request passes the authorization check. * * @return bool */ protected function passesAuthorization() { if (method_exists($this, 'authorize')) { return $this->authorize(); } return true; }// Determine if the request passes the authorization check. // if method_exists this /** * Handle a failed authorization attempt. * * @throws \Illuminate\Contracts\Validation\UnauthorizedException */ protected function failedAuthorization() { throw new UnauthorizedException;//throw new Exception }//Handle a failed authorization attempt }
相关文章推荐
- [李景山php]每天laravel-20160929|ValidatesWhenResolved.php
- [李景山php]每天laravel-20160928|PresenceVerifierInterface.php
- [李景山php]每天laravel-20160928|PresenceVerifierInterface.php
- ajax + php + JSON
- 自动载入实战---构造一个PSR-0的简易框架
- 一个由于php代码结束符引起的技术bug
- 交换机 VLAN TRUNK
- PHP 与 C 语言对比
- PHP 与 Perl 语言对比
- PHP Array 函数
- 其实你距离PHP高级工程师只有一步之遥!
- 从菜鸟到高手,我的php学习之路。
- PHP缓存技术的多种方法小结
- php web开发相关工具整理,更新
- 再谈 THINKPHP 伪静态url(URL访问模式)的设置
- 一步步编写PHP的Framework(一)
- 一步步编写PHP的Framework(二)
- 一步步编写PHP的Framework(三)
- php 注册事件
- php查找一个元素或字符串是否在数组中的三种做法