dpnhp20440 2014-04-19 04:00
浏览 28
已采纳

Laravel - 扩展验证库

I was wondering if someone could help me out.

Im writing a small application that allows people to signup for membership.

I have a plan which is paid.

I use the in build validation library to validate the name and password, but how can i extend that to validate credit card details the same way.

For example

$rules = array(
    'cardnumber' => 'required|legitcardnum'
);

So i can use it with the inbuilt library?

Any help would be greatly appreciated.

Cheers,

  • 写回答

1条回答 默认 最新

  • drwurqczo39355510 2014-04-19 04:50
    关注

    You can register a custom validation rule:

    Validator::extend('legitcardnum', function($attribute, $value, $parameters) {
        // Maybe you need to use preg_match($pattern, $value)
        if($value == 'cardnumber') return true;
        return false;
    });
    

    You may also use a custom message:

    $messages = array(
        'cardnumber.legitcardnum' => 'Invalid card number!',
    );
    

    Then you may use it:

    $rules = array(
        'cardnumber' => 'required|legitcardnum'
    );
    

    Validate it like:

    $input = ...;
    $rules = ...;
    $validator = Validator::make($input, $rules, $messages);
    

    You may also extend the Validator class and better to do it if you want to use that custom rule more than one place/controllers/classes in your projects. Read more here. Also check PHP's preg_match function.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 R语言Rstudio突然无法启动
  • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像
  • ¥15 改算法,照着压缩包里边,参考其他代码封装的格式 写到main函数里
  • ¥15 用windows做服务的同志有吗
  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值