收藏了二款手機(jī)號(hào)碼驗(yàn)證的代碼,一是前臺(tái)用jquery驗(yàn)證再用后臺(tái)php代碼來(lái)驗(yàn)證手機(jī)號(hào)是否合法,希望對(duì)大家有用。
前端代碼我使用jquery.validate.js,代碼如下:
- <script type="text/javascrip">
- $(document).ready(function() {
- $("#smForm").validate({
- rules: {
- smMobilePhone: {
- required: true,
- digits:true,
- range:[13000000000,18999999999]
- }
- },
- messages: {
- smMobilePhone: {
- required: "您沒(méi)有填寫(xiě)手機(jī)號(hào)碼",
- digits: "手機(jī)號(hào)碼格式不對(duì)",
- range: "手機(jī)號(hào)長(zhǎng)度或者格式不對(duì)",
- }
- },
- preErrs : {
- }
- });
- });
- </script>
這只是一個(gè)不精確的驗(yàn)證,只能大概驗(yàn)證到一個(gè)范圍而已,所以重點(diǎn)還在后面。
PHP代碼
- $mobilephone=trim($_POST["smMobilePhone"]);
- //手機(jī)號(hào)碼的正則驗(yàn)證
- if(preg_match("/^13[0-9]{1}[0-9]{8}$|15[0189]{1}[0-9]{8}$|189[0-9]{8}$/",$mobilephone)){
- //驗(yàn)證通過(guò)
- }else{
- //手機(jī)號(hào)碼格式不對(duì)
- }
看實(shí)例:
- <?php
- //正則表達(dá)式
- $tel = "15558530459";//作者的手機(jī)號(hào)碼,如果有疑問(wèn)可以電話聯(lián)系我,或者QQ聯(lián)系我,我的QQ是[email protected]
- if(strlen($tel) == "11")
- {
- //上面部分判斷長(zhǎng)度是不是11位
- $n = preg_match_all("/13[123569]{1}d{8}|15[1235689]d{8}|188d{8}/",$tel,$array);
- /*接下來(lái)的正則表達(dá)式("/131,132,133,135,136,139開(kāi)頭隨后跟著任意的8為數(shù)字 '|'(或者的意思)
- * 151,152,153,156,158.159開(kāi)頭的跟著任意的8為數(shù)字
- * 或者是188開(kāi)頭的再跟著任意的8為數(shù)字,匹配其中的任意一組就通過(guò)了
- * /")*/
- var_dump($array); //看看是不是找到了,如果找到了,就會(huì)輸出電話號(hào)碼的
- }else
- {
- echo "長(zhǎng)度必須是11位";
- }
- /*
- * 雖然看起來(lái)復(fù)雜點(diǎn),清楚理解!
- * 如果有更好的,可以貼出來(lái),分享快樂(lè)!
- * */
- ?>
新聞熱點(diǎn)
疑難解答