我如何验证 Laravel 5.4 中的电子邮件列表[重复]

问题描述 投票:0回答:2

我有一个从客户端发送的电子邮件列表,这些电子邮件之间用逗号分隔。我如何验证所有这些电子邮件以确保它们是有效的电子邮件?例如,用户可以在这样的文本框中捕获电子邮件 [电子邮件受保护][电子邮件受保护][电子邮件受保护]

php laravel validation
2个回答
1
投票

我在某个时候通过使用客户验证功能构建了类似的功能

Validator::extend("emails", function($attribute, $value, $parameters) {
        $rules = ['email' => 'required|email'];
        $emails = array_map('trim', explode(';', $value)); //$value
        foreach ($emails as $email) {
            $data = ['email' => $email];
            $validator = Validator::make($data, $rules);
            if ($validator->fails()) {
                return false;
            }
        }
        return true;
    });

-1
投票

如果您尝试验证电子邮件数组,那么最简单的验证方法是使用点

.
语法和通配符
*
。这是例子:

$request->validate([
    'emails.*' => ['email'],
    ...
]);
© www.soinside.com 2019 - 2024. All rights reserved.