栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > PHP

Validator.php-10

PHP 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Validator.php-10

   protected function validateMimes($attribute, $value, $parameters)

   {

       if (! $this->isAValidFileInstance($value)) {

           return false;

       }// first this must be a file.

 

       return $value->getPath() != '' && in_array($value->guessExtension(), $parameters);

    // get path()

   }// this extension about file be guessed

 

   

   protected function validateMimetypes($attribute, $value, $parameters)

   {

       if (! $this->isAValidFileInstance($value)) {

           return false;

       }

 

       return $value->getPath() != '' && in_array($value->getMimeType(), $parameters);

   }//validate the MIME type of a file upload attribute is in a set of MIME types

 

   

   public function isAValidFileInstance($value)

   {

       if ($value instanceof UploadedFile && ! $value->isValid()) {

           return false;

       }// this value is a instanceof this Uploaded File

 

       return $value instanceof File;

   }//check that the given value is a valid file instance.

 

   

   protected function validateAlpha($attribute, $value)

   {

       return is_string($value) && preg_match('/^[pLpM]+$/u', $value);

   }//get this value just abcd  means it is alphabetic

// just return this value,use preg_match

 

   

   protected function validateAlphaNum($attribute, $value)

   {

       if (! is_string($value) && ! is_numeric($value)) {

           return false;

       }// this is_string

 

       return preg_match('/^[pLpMpN]+$/u', $value);//change this preg match

   }// this must be alpha and numeric characters.

 

   

   protected function validateAlphaDash($attribute, $value)

   {

       if (! is_string($value) && ! is_numeric($value)) {

           return false;

       }

 

       return preg_match('/^[pLpMpN_-]+$/u', $value);

   }// a validate way, alpha number dash and underscores

 

   

   protected function validateRegex($attribute, $value, $parameters)

   {

       if (! is_string($value) && ! is_numeric($value)) {

           return false;

       }

 

       $this->requireParameterCount(1, $parameters, 'regex');

 

       return preg_match($parameters[0], $value);

   }// a user rule , this rule is a regex

 

   

   protected function validateDate($attribute, $value)

   {//Validate that an attribute is a valid date.

       if ($value instanceof DateTime) {

           return true;

       }// a instanceof DateTime

 

       if (strtotime($value) === false) {

           return false;

       }// a false

 

       $date = date_parse($value);// get date

 

       return checkdate($date['month'], $date['day'], $date['year']);

   }// check date

 

   

   protected function validateDateFormat($attribute, $value, $parameters)

   {

       $this->requireParameterCount(1, $parameters, 'date_format');//get count

 

       $parsed = date_parse_from_format($parameters[0], $value);//date_parse_from_format

 

       return $parsed['error_count'] === 0 && $parsed['warning_count'] === 0;//error_count

   }// validate that an attribute matches a date format

 

   

   protected function validateBefore($attribute, $value, $parameters)

   {

       $this->requireParameterCount(1, $parameters, 'before');

 

       if ($format = $this->getDateFormat($attribute)) {

           return $this->validateBeforeWithFormat($format, $value, $parameters);

       }

 

       if (! ($date = strtotime($parameters[0]))) {

           return strtotime($value) < strtotime($this->getValue($parameters[0]));

       }//str to time

 

       return strtotime($value) < $date;

   }//validate before

 

   

   protected function validateBeforeWithFormat($format, $value, $parameters)

   {

       $param = $this->getValue($parameters[0]) ?: $parameters[0];

 

       return $this->checkDateTimeOrder($format, $value, $param);

   }//validate before with format

 

   

   protected function validateAfter($attribute, $value, $parameters)

   {

       $this->requireParameterCount(1, $parameters, 'after');

 

       if ($format = $this->getDateFormat($attribute)) {

           return $this->validateAfterWithFormat($format, $value, $parameters);

       }

 

       if (! ($date = strtotime($parameters[0]))) {

           return strtotime($value) > strtotime($this->getValue($parameters[0]));

       }

 

       return strtotime($value) > $date;

   }// validate after ,just a monitor model

 

   

   protected function validateAfterWithFormat($format, $value, $parameters)

   {

       $param = $this->getValue($parameters[0]) ?: $parameters[0];// get the param

 

       return $this->checkDateTimeOrder($format, $param, $value);// get the check result

   }// validate the date is after a given date with a given format


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/230197.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号