gpt4 book ai didi

php - 检查用户输入的电子邮件地址是否具有与他们在上面输入的域名相似的域

转载 作者:行者123 更新时间:2023-12-04 05:23:43 24 4
gpt4 key购买 nike

在我的注册表单中,我要求用户输入与他们在上面的 url 字段中输入的域名相同的电子邮件。

现在,我以这种方式收集数据:

网址:http://www. domain.com domain.com 部分是用户输入的内容。 http://www是硬编码的。

邮箱:信息 @ domain.com 粗体部分由用户输入。 @ 是硬编码的。

url 中的 domain.com 部分和电子邮件中的 domain.com 部分应该匹配。现在,我可以匹配这两个字段,因为它们是分开的。

但是我想放弃上面的方法,让用户输入整个域名和邮箱。在这种情况下,检查用户是否输入了与他在上面的 url 字段中输入的域相同的电子邮件的好方法是什么。

我正在使用 php 完成所有这些工作。

最佳答案

    <?php

//extract domain from email
$email_domain_temp = explode("@", $_POST['email']);
$email_domain = $email_domain_temp[1];

//extract domain from url
$url_domain_temp = parse_url($_POST['url']);
$url_domain = strip_out_subdomain($url_domain_temp['host']);

//compare
if ($email_domain == $url_domain){
//match
}

function strip_out_subdomain($domain){
//do nothing if only 1 dot in $domain
if (substr_count($domain, ".") == 1){
return $domain;
}
$only_my_domain = preg_replace("/^(.*?)\.(.*)$/","$2",$domain);
return $only_my_domain;
}

所以它的作用是:

首先,将电子邮件字符串分成数组中的 2 部分。第二部分是域。

其次,使用 php 内置函数解析 url,然后提取“主机”,同时删除(可选)子域。

然后比较。

关于php - 检查用户输入的电子邮件地址是否具有与他们在上面输入的域名相似的域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13438259/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com