数据库表基类:
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'); } }
实现类:
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; } }
都是自己摸索着写的,代码有很多地方写得不够好,还请各位同行指教!!!