php判断输入是否是纯数字,英文,汉字的方法

yipeiwu_com6年前PHP代码库

本文实例讲述了php判断输入是否是纯数字,英文,汉字的方法。分享给大家供大家参考。具体分析如下:

这里利用php的mb_strlen和strlen函数就可以轻松得知字符串的构成是全英文、英汉混合、还是纯汉字。简要说明如下:

1、如果strlen返回的字符长度和mb_strlen以当前编码计算的长度一
致,可以判断是纯英文字符串。
2、如果strlen返回的字符长度和mb_strlen以当前编码计算的长度不一致,
且strlen返回值同mb_strlen的返回值求余后得0可以判断为是全汉字的字符串。
3、如果strlen返回的字符长度和mb_strlen以当前编码计算的长度不一致,
且strlen返回值同mb_strlen的返回值求余后不为0,可以判断为是英汉混合的字符串。

php代码如下:

复制代码 代码如下:
<?php
/********
判断输入是否是纯数字,英文,汉字等
利用php的mb_strlen和strlen函数就可以轻松得知字符串的构成
    是全英文、英汉混合、还是纯汉字。简要说明如下(以上示例程序)
    1、如果strlen返回的字符长度和mb_strlen以当前编码计算的长度一
    致,可以判断是纯英文字符串。
    2、如果strlen返回的字符长度和mb_strlen以当前编码计算的长度不一致,
    且strlen返回值同mb_strlen的返回值求余后得0可以判断为是全汉字的字符串。
    3、如果strlen返回的字符长度和mb_strlen以当前编码计算的长度不一致,
    且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我是中国人abc<br />";
$x = mb_strlen($str,'gb2312');
$y = strlen($str);
echo "------456我是中国人abc----<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 = "我";
$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 />';
?>

希望本文所述对大家的php程序设计有所帮助。

相关文章

PHPMailer安装方法及简单实例

PHPMailer安装方法及简单实例

打开你电脑里的PHP.INI文件,找到如下位置,添加红线部分的内容,路径就是你PHPMailer存放的位置:保存,重启apache. 然后借用readme里的一个例子,稍微改一下就可以用...

php实现在限定区域里自动调整字体大小的类实例

本文实例讲述了php实现在限定区域里自动调整字体大小的类。分享给大家供大家参考。具体如下: 这里的php类imagefittext.class.php实现在限定的区域里自动调整字体大小的...

php实现查看邮件是否已被阅读的方法

当你在发送邮件时,你或许很想知道该邮件是否被对方已阅读。这里有段非常有趣的代码片段能够显示对方IP地址记录阅读的实际日期和时间。 复制代码 代码如下: <? error_repor...

php建立Ftp连接的方法

本文实例讲述了php建立Ftp连接的方法。分享给大家供大家参考。具体分析如下: 今天看了下ftp函数,总结一下: FTP相关函数: ftp_connect(host,part,timeo...

PHP实现的AES 128位加密算法示例

本文实例讲述了PHP实现的AES 128位加密算法。分享给大家供大家参考,具体如下: /* 加密算法一般分为两种:对称加密算法和非对称加密算法。 对称加密 对称加密算法是消息发送者和...