중국 휴대전화 번호는 모두 '1'로 시작하고, '0~9'의 10자리 조합을 사용해야 한다는 상식이 필요합니다. 아이디어 와서 쓰세요.
위의 간단한 아이디어를 바탕으로 다음과 같은 인증코드를 작성할 수 있는데, 코드는 다음과 같습니다.
<?php //本代码仅仅是提供一些思路 //距离实际应用还有一些距离 $mobile = '15858588585'; //下面的1便是手机的第一位数字必须为数字1 //[0-9]指后面的数字均为0~9的数字 //{9}这中间的9指的是手机号码除了第一位数外,其他要重复10次,刚好就是11位数了 if(!preg_match('/^1([0-9]{9})/',$mobile)) exit('您的手机号码不正确'); ?>
하지만 위의 코드는 충분히 엄격하지 않습니다. 이렇게 하면 "18888888888"과 같은 휴대폰 번호도 인증을 통과할 수 있으므로 이에 대해 더 엄격한 인증을 수행해야 합니다. 엄격하게, 중국에서 가장 많이 사용되는 세 가지 휴대전화 번호를 살펴보겠습니다.
휴대폰번호 : 134, 135, 136, 137, 138, 139, 150, 151, 157(TD), 158, 159, 187, 188
차이나유니콤 휴대전화번호 : 130, 131, 132, 152, 155, 156, 185, 186
통신 휴대폰번호 : 133, 153, 180, 189, (1349 Satcom)
그런 다음 위의 특성을 기반으로 코드를 이러한 규칙으로 수정하면 다음과 같습니다.
<?php function checkMobile($str) { $pattern = “/^(13|15)d{9}$/”; if (preg_match($pattern,$str)) { Return true; } else { Return false; } } //调用函数 $str = checkMobile(“15800000001″); if($str) { echo(“符合手机号码标准”); } else { echo(“不符合手机号码标准”); } ?>
위 내용은 13과 15로만 시작할 수 있습니다. 새로운 문단이 있으면 작동하지 않습니다. 코드는 다음과 같습니다.
function is_mobile($str){ return preg_match("/^(((d{3}))|(d{3}-))?13d{9}$/", $str); }
이렇게 하면 전체 분석 아이디어가 긴밀하게 연결되어 있으며, 해결책을 찾기 위해 휴대폰 번호의 PHP 인증에 대한 세부 분석이 수행됩니다.
위 내용은 여러분의 학습에 도움이 되기를 바라면서 공유해 드리는 PHP로 휴대폰 번호를 인증하는 방법입니다.