개발자의 끄적끄적

[php] 전화번호 체크 예제 소스 본문

개발/php

[php] 전화번호 체크 예제 소스

효벨 2020. 3. 8. 01:00
728x90
반응형

[php] 전화번호 체크 예제 소스

 


if (!function_exists('phone_number_check')) {
    function phone_number_check($pString)
    {
        $is_rule = false;
        $re_phoneNum = preg_replace('/-/', '', $pString);

        $mobile = preg_match('/^01[016789]{1}-?([0-9]{3,4})-?[0-9]{4}$/', $pString);
        $tel = preg_match('/^(02|0[3-6]{1}[1-5]{1})-?([0-9]{3,4})-?[0-9]{4}$/', $pString);
        $rep = preg_match('/^(15|16|18)[0-9]{2}-?[0-9]{4}$/', $pString);
        $rep2 = preg_match('/^(02|0[3-6]{1}[1-5]{1})-?(15|16|18)[0-9]{2}-?[0-9]{4}$/', $pString);
        $num = preg_match('/^(070|(050[2-8]{0,1})|080|013)-?([0-9]{3,4})-?[0-9]{4}$/', $pString);

        if ($mobile != false) {
            $is_rule = true;
            if (strlen($re_phoneNum) > 11) {
                $is_rule = false;
            }
        } else if ($tel != false) {
            $is_rule = true;
            if (strlen($re_phoneNum) > 11) {
                $is_rule = false;
            }
        } else if ($rep != false) {
            $is_rule = true;
            if (strlen($re_phoneNum) != 8) {
                $is_rule = false;
            }
        } else if ($num != false) {
            $is_rule = true;
            if (strlen($re_phoneNum) > 12) {
                $is_rule = false;
            }
        } else {
            $is_rule = false;
        }

        if ($rep2 == true) {
            $is_rule = false;
        }

        return $is_rule;
    }
}

 

출처 : https://chicrock.tistory.com/204?category=347756

반응형
Comments