2017 © Pedro Peláez
 

library validation

Illuminate Validation form valid

image

sunny/validation

Illuminate Validation form valid

  • Thursday, August 17, 2017
  • by caohui123
  • Repository
  • 1 Watchers
  • 0 Stars
  • 3 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 1 Versions
  • 0 % Grown

The README.md

validation

本工具简单封装了Illuminate\Validation 使其使用起来更加方便 ,需要new一个表单 添加rules 等, (*1)

composer文件代码:

    "sunny/validation":"dev-master"

使用方法:, (*2)

1、先构造一个需要验证的类testForm

class TestForm extends Libs\Tools\Form
{
    public function __construct($data)
    {
        parent::__construct($data);
    }

    public function rules()
    {
        return [
            'title' => 'required|string|min:2|max:5',
            'status' => 'required|integer'
        ];
    }
}

2、调用:

  $data = [
            'title' => '123457',
            'status' => 'werwer',
        ];

        $validator = (new TestForm($data))->make();
        if ($validator->fails()) {
            echo 'fail' . "<br>";
            foreach ($validator->errors()->getMessages() as $key => $error) {
                echo $error[0] . "<br>";
            }
        } else {
            echo 'ok';
        }

3、运行效果图

运行效果图, (*3)

4、添加自定义验证

完整的form例子如下:, (*4)

use Libs\Tools\Form;

class TestForm extends Form
{
    public function __construct($data)
    {
        parent::__construct($data);
        $this->extend();
    }

    public function rules()
    {
        return [
            'title' => 'required|string|min:2|max:5',
            'status' => 'required|integer',
            'test' => 'required|string|foo'
        ];
    }
    public function attributes()
    {
        return [
            'status'=>'状态',
            'test'=>'测试',
        ]; // TODO: Change the autogenerated stub
    }

    public function messages()
    {
        return [
            'foo' => ':attribute 不等于foo',
        ]; // TODO: Change the autogenerated stub
    }

    public function extend(){
        $this->_valid->extend('foo', function ($attribute, $value, $parameters) {
            return $value == 'foo';
        });
    }
}

例子二, (*5)


```php $data = [ 'title' => '123457', 'status' => 'werwer', 'test' => 'fooddd' ];, (*6)

 $validator = (new TestForm($data))->make();
 if ($validator->fails()) {
     $this->assign('errors', $validator->errors());
 } else {
     echo 'ok';
 }
 $this->assign('form', $data);

 $this->display();
html模板如下:  
```html
<!DOCTYPE HTML>
<html>
<head>
    <meta charset="UTF-8">
    <title>form</title>
    <link href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
</head>
<body>


Login
if($errors->has('title')){ //echo $errors->first('title'); {$errors->first('title')} }
if($errors->has('status')){ {$errors->first('status')} }
</body> </html>

运行效果图, (*7)


运行效果图, (*8)

更多用法请参考:
laravel validation, (*9)

The Versions

17/08 2017

dev-master

9999999-dev

Illuminate Validation form valid

  Sources   Download

MIT

The Requires