• Phalcon框架之———— 2.0升级到3.0 问题Model验证问题解决


    Github源码:https://github.com/phalcon/cphalcon/tree/master/phalcon/validation/validator

    Phalcon 2.0 Model 字段验证:

    public function validation()
        {
            $this->validate(new PresenceOf(array(
                "field" => 'code',
                "message" => '应用名称不能为空',
            )));
            $this->validate(new Regex(array(
                "field" => 'code',
                "message" => '应用名称只能包含字母、数字、 中、下划线',
                'pattern' => '/^[-A-Za-z0-9_]+$/',
            )));
            $this->validate(new ModelValidatorUniqueness(array(
                'field' => 'code',
                'message' => '应用名称已被使用'
            )));
            $this->validate(new PresenceOf(array(
                "field" => 'name',
                "message" => '名称不能为空',
            )));
            $this->validate(new PresenceOf(array(
                "field" => 'mechanismId',
                "message" => '请选择归属推理系统',
            )));
    
            return $this->validationHasFailed() != true;
        }

    Phalcon 3.0 Model 字段验证:

    use PhalconValidationValidatorPresenceOf;
    use PhalconValidationValidatorRegex as RegexValidator;
    use PhalconValidationValidatorUniqueness;

    public function validation() { $validator = new Validation(); //验证值不为null或空字符串 $validator->add( [ 'mobile', 'password' ], new PresenceOf([ "message" => [ 'mobile' => '手机号不能为空', 'password' => '密码不能为空', ], ]) ); //允许验证字段的值是否与正则表达式匹配 $validator->add( [ 'mobile', 'password' ], new RegexValidator([ 'pattern' => [ 'mobile' => "/^(13[0-9]|14[0-9]|17[0-9]|15[0-9]|18[0-9])d{8}$/", 'password' => "/^[A-Za-z0-9_]+$/", ], 'message' => [ 'mobile' => '手机号只能包含英文、数字和下划线', 'password' => '密码只能包含英文、数字和下划线' ] ]) ); //检查相关表中的字段是否唯一 $validator->add( 'mobile', new Uniqueness([ 'model' => 'User', 'message' => ':field must be unique' ]) ); return $this->validate($validator); }
  • 相关阅读:
    Hive-03 常用函数
    linux定时运行命令脚本crontab
    Flink| time| watermark| Windows窗口
    多个线程运行MR程序时hadoop出现的问题
    maxwell实时同步mysql中binlog
    Hive-04 参数调优
    gopm的使用和更新go语言
    flutter的成功
    数据库系统概论--数据模型
    mysql设置编码格式--支持中文
  • 原文地址:https://www.cnblogs.com/tinywan/p/6272428.html
Copyright © 2020-2023  润新知