PHP,ZF2

数据库表基类:php

<?php
namespace Oa\Model;

use \Zend\InputFilter\InputFilterAwareInterface;

use Zend\InputFilter\InputFilterInterface;

class BaseModel implements InputFilterAwareInterface
{
 
   
   protected $inputFilter;

   public function exchangeArray($data)
   {
       
       $properties = $this->getArrayCopy();      

       foreach ($properties as $key => $value) {
           if($key != 'inputFilter') {
               $this->$key = (!empty($data[$key])) ? $data[$key] : null;
           }
       }
       
       
   }
   
   public function getArrayCopy(){
      return get_object_vars($this);
   }
   
   public function getInputFilter() {

   }
   public function setInputFilter(InputFilterInterface $inputFilter) {
       throw new \Exception('Not used');
   }
}

实现类:git

<?php
namespace Oa\Model;

use \Zend\InputFilter\InputFilterAwareInterface;
use \Zend\InputFilter\InputFilter;
use Zend\InputFilter\Factory;
use Zend\InputFilter\InputFilterInterface;
use Oa\Model\BaseModel;


class Userinfo extends BaseModel
{
   public $id;
   public $employeeId;
   public $name;
   public $company;
   public $area;
   public $part1;
   public $part2;
   public $team;
   public $job;
   public $attendId;
   public $identify;
   public $sex;

   public function getInputFilter() {

       if(!$this->inputFilter) {
           $this->inputFilter = new InputFilter();

           $this->inputFilter->add([
               'name'=>'employeeId',
               'required'=>true,
               'filters'=>[
                   ['name'=>'StringTrim'],
               ],
               'validators'=>[
                   ['name'=>'NotEmpty',
                       'options'=>[
                           'message'=>[
                               '\Zend\Validator\NotEmpty::IS_EMPTY'=>'员工号不能为空',
                           ],
                       ],
                   ],

               ]
           ]);

           $this->inputFilter->add([
               'name'=>'attendId',
               'required'=>true,
               'filters'=>[
                   ['name'=>'StringTrim'],
               ],
               'validators'=>[
                   ['name'=>'NotEmpty',
                       'options'=>[
                           'message'=>[
                               '\Zend\Validator\NotEmpty::IS_EMPTY'=>'考勤号不能为空',
                           ],
                       ],
                   ],
                   ['name'=>'Digits',
                       'options'=>[
                           'message'=>[
                               '\Zend\Validator\Digits::NOT_DIGITS'=>'考勤号只能为数字'
                           ]
                       ]
                   ]
               ]
           ]);
           $this->inputFilter->add([
               'name'=>'identify',
               'required'=>true,
               'filters'=>[
                   ['name'=>'StringTrim'],
               ],
               'validators'=>[
                   ['name'=>'NotEmpty',
                       'options'=>[
                           'message'=>[
                               '\Zend\Validator\NotEmpty::IS_EMPTY'=>'身份证不能为空',
                           ],
                       ],
                   ],

               ]
           ]);
           $this->inputFilter->add([
               'name'=>'name',
               'required'=>true,
               'filters'=>[
                   ['name'=>'StringTrim'],
               ],
               'validators'=>[
                   ['name'=>'NotEmpty',
                       'options'=>[
                           'message'=>[
                               '\Zend\Validator\NotEmpty::IS_EMPTY'=>'姓名不能为空',
                           ],
                       ],
                   ],
               ]
           ]);

           $this->inputFilter->add([
               'name'=>'name',
               'required'=>true,
               'filters'=>[
                   ['name'=>'StringTrim'],
               ],
               'validators'=>[
                   ['name'=>'NotEmpty',
                       'options'=>[
                           'message'=>[
                               '\Zend\Validator\NotEmpty::IS_EMPTY'=>'姓名不能为空',
                           ],
                       ],
                   ],
               ]
           ]);
           $this->inputFilter->add([
               'name'=>'area',
               'required'=>true,
               'filters'=>[
                   ['name'=>'StringTrim'],
               ],
               'validators'=>[
                   ['name'=>'NotEmpty',
                       'options'=>[
                           'message'=>[
                               '\Zend\Validator\NotEmpty::IS_EMPTY'=>'地区不能为空',
                           ],
                       ],
                   ],
               ]
           ]);
           $this->inputFilter->add([
               'name'=>'part1',
               'required'=>true,
               'filters'=>[
                   ['name'=>'StringTrim'],
               ],
               'validators'=>[
                   ['name'=>'NotEmpty',
                       'options'=>[
                           'message'=>[
                               '\Zend\Validator\NotEmpty::IS_EMPTY'=>'部门不能为空',
                           ],
                       ],
                   ],
               ]
           ]);
           $this->inputFilter->add([
               'name'=>'company',
               'required'=>true,
               'filters'=>[
                   ['name'=>'StringTrim'],
               ],
               'validators'=>[
                   ['name'=>'NotEmpty',
                       'options'=>[
                           'message'=>[
                               '\Zend\Validator\NotEmpty::IS_EMPTY'=>'公司不能为空',
                           ],
                       ],
                   ],
               ]
           ]);

       }

       return $this->inputFilter;
   }

}

都是本身摸索着写的,代码有不少地方写得不够好,还请各位同行指教!!!数据库

相关文章
相关标签/搜索