$data['rid']=I('rid');
$data['unique_id']=I('unique_id');
$data['access']=I('access');
$access=D('Access');
if(!$access->create($data)){
$this->error( $access->getError() );
}else {
unset($data['unique_id']);
$access->where(array('role_id'=>$data['rid']))->delete();
} protected $_validate=array(
array('unique_id','check_unique_id','唯一标示符不正确!',0,'function'), // 自定义函数验证
array('rid','number','节点ID必须为数字!'),
array('access','check_access','权限不合法!',0,'callback'),
array('role_id','number','角色ID必须为数字!'),
array('node_id','number','节点ID必须为数字!'),
array('level',array(1,2,3),'值的范围不正确!',0,'in'),
);
protected function check_access($access){
if(!is_array($access)){
return false;
}else {
$pattern="/^[0-9]+_[1-3]$/";
foreach ($access as $value){
if(!preg_match($pattern,$value)){
return false;
}
}
}
return true;
}
最佳答案