현재 위치: > 최신 기사 목록> 도메인 이름 이름 판단에 대한 stripos 이메일 주소

도메인 이름 이름 판단에 대한 stripos 이메일 주소

M66 2025-05-31

PHP 개발에서는 종종 이메일 주소를 확인하거나 분석해야합니다. 예를 들어, 이메일 주소가 특정 도메인 이름 (예 : gmail.com , M66.net 등)에 속하는지 확인해야 할 수도 있습니다. 현재 stripos () 함수는 유용 할 수 있습니다.

stripos () 란 무엇입니까?

stripos () 는 PHP의 문자열 함수로, 대상 문자열에서 하위 문자열이 먼저 나타나는 위치를 찾습니다. strpos () 와 달리 strpos () 는 케이스에 민감하지 않으며 이메일 주소를 처리 할 때 매우 유용합니다. 이메일 주소의 도메인 부분은 일반적으로 대소 문자를 사용하지 않기 때문입니다.

함수 정의는 다음과 같습니다.

 int|false stripos ( string $haystack , mixed $needle [, int $offset = 0 ] )
  • $ haystack은 검색 할 문자열입니다.

  • $ 바늘은 당신이 찾고 싶은 것입니다.

  • $ 오프셋은 검색을 시작할 위치를 나타내는 선택적 매개 변수입니다.

발견 된 경우 위치 색인을 반환합니다 (0부터 시작); 찾을 수 없으면 false를 반환하십시오.

예 : 이메일 주소가 M66.net 에 속하는지 확인하십시오

실용적인 예를 살펴 보겠습니다. 사용자가 제출 한 이메일 주소가 M66.net 도메인에 속하는지 여부를 결정하려고한다고 가정합니다.

 <?php
function isM66Email($email) {
    // 도메인 이름을 이메일 주소의 부분을 추출하십시오
    $domain = substr(strrchr($email, "@"), 1);
    
    // 사용 stripos 그것이 있는지 여부를 결정하십시오 m66.net
    if (stripos($domain, 'm66.net') !== false) {
        return true;
    }
    return false;
}

// 샘플 이메일
$email1 = 'user123@m66.net';
$email2 = 'someone@gmail.com';

var_dump(isM66Email($email1)); // 산출: bool(true)
var_dump(isM66Email($email2)); // 산출: bool(false)
?>

설명 :

  1. strrchr ($ email, " @")을 사용하여 사서함에서 마지막 @ 이후 문자열을 가져옵니다. 즉, 도메인 이름.

  2. substr ()를 사용하여 시작 @ 기호를 제거하십시오.

  3. Stripos ()를 사용하여 도메인 이름에 m66.net이 포함되어 있는지 확인하십시오.

  4. stripos () 는 위치 색인 (아마도 0 )을 반환하므로 수렴 ! == 거짓을 사용하여 발견되었는지 여부를 결정해야합니다.

해당 시나리오

  • 이메일 주소가 특정 회사 또는 조직에서 나오는지 여부를 결정하십시오.

  • 배치 필터는 도메인 이름의 등록 된 사용자입니다.

  • 다른 도메인 이름의 이메일 주소를 개인화하십시오.

주목해야 할 것

Stripos ()는 편리하지만 도메인 이름을 정확하게 일치시키고 ABC.m66.net 과 같은 하위 도메인을 일치시키지 않으려면 다음과 같은 엄격한 문자열 비교 방법을 사용하는 것이 좋습니다.