php判斷輸入是否是純數(shù)字,英文,漢字的方法

字號(hào):


    這篇文章主要介紹了php判斷輸入是否是純數(shù)字,英文,漢字的方法,涉及php中mb_strlen和strlen等函數(shù)的使用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    本文實(shí)例講述了php判斷輸入是否是純數(shù)字,英文,漢字的方法。分享給大家供大家參考。具體分析如下:
    這里利用php的mb_strlen和strlen函數(shù)就可以輕松得知字符串的構(gòu)成是全英文、英漢混合、還是純漢字。簡(jiǎn)要說明如下:
    1、如果strlen返回的字符長(zhǎng)度和mb_strlen以當(dāng)前編碼計(jì)算的長(zhǎng)度一
    致,可以判斷是純英文字符串。
    2、如果strlen返回的字符長(zhǎng)度和mb_strlen以當(dāng)前編碼計(jì)算的長(zhǎng)度不一致,
    且strlen返回值同mb_strlen的返回值求余后得0可以判斷為是全漢字的字符串。
    3、如果strlen返回的字符長(zhǎng)度和mb_strlen以當(dāng)前編碼計(jì)算的長(zhǎng)度不一致,
    且strlen返回值同mb_strlen的返回值求余后不為0,可以判斷為是英漢混合的字符串。
    php代碼如下:
    代碼如下:
    <?php
    /********
    判斷輸入是否是純數(shù)字,英文,漢字等
    利用php的mb_strlen和strlen函數(shù)就可以輕松得知字符串的構(gòu)成
    是全英文、英漢混合、還是純漢字。簡(jiǎn)要說明如下(以上示例程序)
    1、如果strlen返回的字符長(zhǎng)度和mb_strlen以當(dāng)前編碼計(jì)算的長(zhǎng)度一
    致,可以判斷是純英文字符串。
    2、如果strlen返回的字符長(zhǎng)度和mb_strlen以當(dāng)前編碼計(jì)算的長(zhǎng)度不一致,
    且strlen返回值同mb_strlen的返回值求余后得0可以判斷為是全漢字的字符串。
    3、如果strlen返回的字符長(zhǎng)度和mb_strlen以當(dāng)前編碼計(jì)算的長(zhǎng)度不一致,
    且strlen返回值同mb_strlen的返回值求余后不為0,可以判斷為是英漢混合的字符串。
    */
    $str = "456abc";
    $x = mb_strlen($str,'gb2312');
    $y = strlen($str); echo "------456abc----<br>";
    echo "$x".'<br />';
    echo "$y".'<br />';
    $str = "456我是中國(guó)人abc<br />";
    $x = mb_strlen($str,'gb2312');
    $y = strlen($str);
    echo "------456我是中國(guó)人abc----<br />";
    echo "$x".'<br />'; echo "$y".'<br />';
    $str = "我是中國(guó)人我愛祖國(guó)";
    $x = mb_strlen($str,'gb2312');
    $y = strlen($str);
    echo "------我是中國(guó)人我愛祖國(guó)----<br />"; echo "$x".'<br />';
    echo "$y".'<br />'; $str = "我";
    $x = mb_strlen($str,'gb2312');
    $y = strlen($str);
    echo "------我----<br />"; echo "$x".'<br />';
    echo "$y".'<br />';
    $str = "我ab";
    $x = mb_strlen($str,'gb2312');
    $y = strlen($str);
    echo "------我ab----<br />"; echo "$x".'<br />'; echo "$y".'<br />';
    ?>
    希望本文所述對(duì)大家的php程序設(shè)計(jì)有所幫助。