Первое, что нужно проверить, является ли адрес электронной почты, полученный вами из заголовков электронной почты, действительным, то есть:
John Adams <john@us.ibm.com>
"John Adams" <john@us.ibm.com>
john@us.ibm.com
Затем вы можете проверить, пришел ли он из домена IBM:
if(preg_match('/@([a-z]{2}\.)?ibm.com/i', $emailaddress)) {
# email is from an ibm domain
}
Наконец, и это сложная часть, убедитесь, что электронное письмо было отправлено с сервера, принадлежащего IBM, потому что даже я могу отправить вам электронное письмо с адресом "arvin@ibm.com" в качестве адреса электронной почты, указанного в поле Отfield.
Вы можете перечислить все IP-адреса серверов электронной почты IBM, а затем проверить, было ли письмо отправлено с них, используя поля заголовка письма.Или, если ваш сервер выполняет проверку SPF, вы можете проверить, является ли поле Received-SPF сообщения электронной почты "pass".