<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// 이 기사는 사용 방법을 설명합니다PHP사내preg_match기능 휴대 전화 번호 형식을 확인하는 기능。</span></span><span>
</span><span><span class="hljs-comment">// 우리는 상세한 정규 표현 구문 분석 및 실제 예를 제공 할 것입니다.,이해하고 적용하는 데 도움이됩니다。</span></span><span>
</span><span><span class="hljs-comment">// --------------------------------------------------------------</span></span><span>
</span><span><span class="hljs-meta">?></span></span><span>
<h1>사용preg_match기능 검증 휴대 전화 번호 형식:상세한 정규 표현 쓰기 및 예</h1>
<p>존재하다Web개발 중,사용户注册、정보 작성 및 기타 시나리오에는 종종 휴대폰 번호의 형식 확인이 필요합니다.。PHP中可以使사용<strong>preg_match</strong>기능 조합<strong>정규 표현</strong>이 기능을 완료합니다。本文将详细介绍如何使사용preg_match중국 본토에서 휴대 전화 번호 형식의 기능 확인。</p>
<h2></span><span><span class="hljs-number">1</span></span><span>. preg_match기능 소개</h2>
<p>preg_match예PHP中사용于정규 표현匹配的函数,구문은 다음과 같습니다:</p>
<pre><code></span><span><span class="hljs-keyword">int</span></span><span> </span><span><span class="hljs-title function_ invoke__">preg_match</span></span><span>(</span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$pattern</span></span><span>, </span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$subject</span></span><span>, </span><span><span class="hljs-keyword">array</span></span><span> &</span><span><span class="hljs-variable">$matches</span></span><span> = </span><span><span class="hljs-literal">null</span></span><span>, </span><span><span class="hljs-keyword">int</span></span><span> </span><span><span class="hljs-variable">$flags</span></span><span> = </span><span><span class="hljs-number">0</span></span><span>, </span><span><span class="hljs-keyword">int</span></span><span> </span><span><span class="hljs-variable">$offset</span></span><span> = </span><span><span class="hljs-number">0</span></span><span>)
안에:
중국 본토의 휴대 전화 번호는 일반적으로 11 자리이며 , 두 자리는 일반적 으로 3-9 입니다 . 특정 규칙은 다음과 같습니다.
이 규칙에 따르면, 당신은 다음과 같은 정규 표현을 쓸 수 있습니다.
<span class="fun">/^</span> <span> <span class = "hljs-number"> 1 </span> </span> <span> [</span> <span> <span class = "hljs-number"> 3 </span> </span> <span>-</span> <span> <span class = "hljs-number"> 9 </span> <span> </span> </d span>] 클래스 = "HLJS-Number"> 9 </span> </span> <span>} $/</span>
<?php
</span><span><span class="hljs-function"><span class="hljs-keyword">function</span></span></span><span> </span><span><span class="hljs-title">isValidPhoneNumber</span></span><span>(</span><span><span class="hljs-params"><span class="hljs-variable">$number</span></span></span><span>) {
</span><span><span class="hljs-keyword">return</span></span><span> </span><span><span class="hljs-title function_ invoke__">preg_match</span></span><span>(</span><span><span class="hljs-string">'/^1[3-9]\d{9}$/'</span></span><span>, </span><span><span class="hljs-variable">$number</span></span><span>) === </span><span><span class="hljs-number">1</span></span><span>;
}
</span><span><span class="hljs-comment">// 예:</span></span><span>
</span><span><span class="hljs-variable">$numbers</span></span><span> = [
</span><span><span class="hljs-string">'13812345678'</span></span><span>, </span><span><span class="hljs-comment">// 정당한</span></span><span>
</span><span><span class="hljs-string">'19900000000'</span></span><span>, </span><span><span class="hljs-comment">// 정당한</span></span><span>
</span><span><span class="hljs-string">'12812345678'</span></span><span>, </span><span><span class="hljs-comment">// 불법적인(第二位不예3-9)</span></span><span>
</span><span><span class="hljs-string">'1391234567'</span></span><span>, </span><span><span class="hljs-comment">// 불법적인(길이가 충분하지 않습니다)</span></span><span>
</span><span><span class="hljs-string">'139123456789'</span></span><span> </span><span><span class="hljs-comment">// 불법적인(너무 길다)</span></span><span>
];
</span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$numbers</span></span><span> </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$num</span></span><span>) {
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">isValidPhoneNumber</span></span><span>(</span><span><span class="hljs-variable">$num</span></span><span>)) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"<span class="hljs-subst">$num</span></span></span><span> 예정당한的手机号\n";
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"<span class="hljs-subst">$num</span></span></span><span> 예불법적인的手机号\n";
}
}
?>
적절한 정규 표현식과 결합 된 preg_match를 사용하면 휴대 전화 번호 형식을 효율적으로 확인할 수 있습니다. 기존 프로젝트의 경우이 방법은 간단하고 빠르며 정확하며 불법 휴대 전화 번호가 시스템에 들어가는 것을 효과적으로 방지 할 수 있습니다.
물론,보다 복잡한 검증 요구 (예 : 운영자 번호 세그먼트, 국제 번호 등)와 같은 경우 정규 표현식을 추가로 최적화하거나 특수 번호 라이브러리를 검증에 사용할 수 있습니다.