php判断字符串是否为数字的4种方法
判断PHP字符串是否为数字的方法有很多,例如使用ctype_digit()函数、is_int()函数、is_numeric()函数等,本篇文章就来详细介绍下这些方法的使用。
is_numeric()函数
用于检测变量是否为数字或数字字符串。
不管是字符串类型还是小数点,如果是数值(true)会判断。
使用is_numeric()函数进行数字判断
// 按类型存储在变量中
$str = '255'; // 字符串(string)类型
$int = 255; // 整数(int)类型
$flt = 255.99; // 浮点(float)类型
// 字符串(string)类型
if (is_numeric($str)) {
echo '字符串(string)类型 => OK!';
} else {
echo '字符串(string)类型 => NO!';
}
// 整数(int)型
if (is_numeric($int)) {
echo '整数(int)型 => OK!';
} else {
echo '整数(int)型 => NO!';
}
// 浮点(float)型
if (is_numeric($flt)) {
echo '浮点(float)型 => OK!';
} else {
echo '浮点(float)型 => NO!';
}输出结果:
字符串(string)类型 => OK! 整数(int)型 => OK! 浮点(float)型 => OK!
通过is_numeric()函数判断字符串、整数、浮点都OK!
is_int()函数
用于检测变量是否是整数。
就算是数值,如果是字符串类型也不行!
用is_int()函数检查是否为int类型
// 按类型存储在变量中
$str = '255'; // 字符串(string)类型
$int = 255; // 整数(int)类型
$flt = 255.99; // 浮点(float)类型
// 判断字符串(string)类型
if (is_int($str)) {
echo '字符串(string)类型 => OK!';
} else {
echo '字符串(string)类型 => NO!';
}
// 整数(int)型
if (is_int($int)) {
echo '整数(int)型 => OK!';
} else {
echo '整数(int)型 => NO!';
}
// 浮点(float)型
if (is_int($flt)) {
echo '浮点(float)型 => OK!';
} else {
echo '浮点(float)型 => NO!';
}输出结果:
字符串(string)类型 => NO! 整数(int)型 => OK! 浮点(float)型 => NO!
从例子中可以看到只有整数是可以的!is_int中不允许使用字符串和浮点(float)型。
从HTML表单提交的数字是字符串类型,因此in_int()不能在此场景使用。
只有在严格判断int类型的时候使用它。

preg_match()函数
使用正则表达式检查是否为数字。
// 按类型存储在变量中
$str = '255'; // 字符串(string)类型
$int = 255; // 整数(int)类型
$flt = 255.99; // 浮点(float)类型
// 判断字符串(string)类型
if (preg_match('/^[0-9]+$/', $str)) {
echo '字符串(string)类型 => OK!';
} else {
echo '字符串(string)类型 => NO!';
}
// 整数(int)型
if (preg_match('/^[0-9]+$/', $int)) {
echo '整数(int)型 => OK!';
} else {
echo '整数(int)型 => NO!';
}
// 浮点(float)型
if (preg_match('/^[0-9]+$/', $slt)) {
echo '浮点(float)型 => OK!';
} else {
echo '浮点(float)型 => NO!';
}输出结果:
字符串(string)类型 => OK! 整数(int)型 => OK! 浮点(float)型 => NO!
preg_match()会根据给定的正则表达式进行匹配,但是不包括小数的数值,无论是string类型还是int类型都会进行判断。
但实际编程中很少有人使用preg_match()函数进行判断,因为很多同学觉得使用正则很麻烦。
ctype_digit()函数
检查字符串里的字符是否是数字,如果字符串中的所有字符都是数字,则返回true,否则为false。
用ctype_digit()函数检查是否是数字
// 按类型存储在变量中
$str = '255'; // 字符串(string)类型
$int = 255; // 整数(int)类型
$flt = 255.99; // 浮点(float)类型
// 判断字符串(string)类型
if (ctype_digit($str)) {
echo '字符串(string)类型 => OK!';
} else {
echo '字符串(string)类型 => NO!';
}
// 整数(int)型
if (ctype_digit($int)) {
echo '整数(int)型 => OK!';
} else {
echo '整数(int)型 => NO!';
}
// 浮点(float)型
if (ctype_digit($flt)) {
echo '浮点(float)型 => OK!';
} else {
echo '浮点(float)型 => NO!';
}输出结果:
字符串(string)类型 => OK! 整数(int)型 => NO! 浮点(float)型 => NO!
从例子的结果中可以看到,只要是字符串类型的整数就可以了!如果不是字符串,则会返回0/FASLE。
从HTML表单POS过来的值是字符串类型,因此可以使用ctype_digit()函数来验证。
结语
文章中我们详细的讲解了php判断字符串是否为数字的4种方法,每种方法都有自己的特点,下面我们来将它总结在表格中。
| 函数名 | 字符串(string)类型-("255") | 整数(int)类型-(255) | 浮点(float)类型-(255.99) |
|---|---|---|---|
| is_numeric | ok!(true) | ok!(true) | ok!(true) |
| is_int | no!(false) | ok!(true) | no!(false) |
| preg_match(/^[0-9]+$/) | ok!(true) | ok!(true) | no!(false) |
| ctype_digit | ok!(true) | no!(false) | no!(false) |
本文来源:词雅网
本文地址:https://www.ciyawang.com/php-95.html
本文使用「 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 」许可协议授权,转载或使用请署名并注明出处。
相关推荐
-
Array_combine函数:让数组合并更简单
引言作为一名程序员,我们经常需要合并两个或多个数组。这时候,一个非常方便的函数就出现了,那就是array_combine函数。什么是array_combine函数?array_combine函数是PH...
-
使用PHP读取本地文件的方法
对于需要处理本地文件的PHP应用程序,读取本地文件是必不可少的操作。本文将介绍如何使用PHP读取本地文件。使用file_get_contents函数读取本地文件file_get_contents函数是...
-
PHP Cookies设置:了解cookie是如何工作的
在Web开发中,cookie是一种常见的技术,可以帮助我们保存用户信息,跟踪用户行为和提供个性化体验。在本文中,我们将深入探讨PHP cookies的设置。1. 什么是cookie?cookie是一种...
-
php获取当前月份及相关应用
在PHP中,获取当前月份的方法非常简单。只需要使用date()函数,并指定参数为“m”即可。代码如下:$month = date("m"); echo&nbs...
-
使用PHP的strip_tags()函数从字符串中去除HTML标签
strip_tags()函数可以从字符串中去除HTML标签。请注意,使用allow参数允许的HTML标记不会被剥离,但通常HTML标记总是被剥离。 顺便说一句,它有一个二...
-
如何使用PHP读取文件的6种方法
总结了用PHP读取文件的方法。 试着用6种方法读入文件。 file函数...
-
在PHP中检查文件存在的两种方法!(is_file)
我正在写如何检查 PHP 中是否存在“具有指定路径的文件”。 您可以使用以下两个函数来检查文件路径是否存在。...
-
通俗易懂的讲解nl2br()函数,将换行代码转换成br标签
这次,我将解释将换行字符转换为br标签的nl2br函数! 它非常容易使用! 但是,如果nl2br()函数使用不正确,它可能无法正确转换,所以需要注意!...
-
使用pathinfo函数轻松获取扩展名和文件名
你是否遇到过只想从文件路径中提取文件名或扩展名的情况? 我认为有多种方法,例如使用split分隔符拆分文件路径或使用substr函数提取文件路径。 但是...
-
使用PHP的is_null()函数检查变量是否为NULL
使用PHP的is_null()函数检查变量是否为NULL。 NULL表示没有值,不同于“0”或空字符串。 is_null()函数允许您检查变量是否为NU...
词雅网