我正在使用csv文件使用laravel将学生的电子邮件地址上传到数据库。 CSV文件包含一个名为“email”的列,用于列出电子邮件。我想添加一个验证来检查所有电子邮件的格式是否正确。 正确的电子邮件地址格式应为@ uni.com
请咨询
$path = Input::file('import_file')->getRealPath();
$data = Excel::load($path, function ($reader) {
})->get();
if (!empty($data) && $data->count() && !empty($data1) && $data1->count() ) {
foreach ($data as $key => $value) {
$insert[] = ['email' => $value->email]; }
if (!empty($insert)) {
DB::table('users')->insert($insert);
}
我正在使用laravel maatwebsite / excel插件
答案 0 :(得分:1)
您可以在PHP中使用正则表达式检查。请参阅http://php.net/manual/en/function.preg-match.php以供参考。
假设电子邮件地址可以包含从a到z的任何字符,以下PHP代码将检查正确的电子邮件格式(通常电子邮件地址有下划线,数字(不是第一个字符)等等。所以你需要制作一个更复杂的正则表达式来测试它)
$pattern = '/[a-z]+@uni\.com/i';
if(preg_match($pattern, $email) == 1) {
// Correct email address
} else {
// Incorrect email address
}