php如何检测字符串是否为数字

发布时间:2022-08-30 09:31:59 作者:iii
来源:亿速云 阅读:283

这篇文章主要介绍“php如何检测字符串是否为数字”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“php如何检测字符串是否为数字”文章能帮助大家解决问题。

两种检测方法:1、使用is_numeric()函数,可以检测一个字符串是否为数字字符串,语法“is_numeric(字符串)”,返回TRUE则是,反之则不是。2、将字符串强制转为数字类型,再将数字与原字符串进行比较,判断是否相等,语法“strcmp((float)$str,$str)==0”,返回TRUE则是,反之则不是。

php如何检测字符串是否为数字

本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑

方法1:使用is_numeric()函数检测

字符串只含数字,则该字符串为数字字符串。

而is_numeric()函数可以检测一个字符串是否为数字字符串。

is_numeric ($var)

如果指定的变量$var是数字和数字字符串则返回 TRUE,否则返回 FALSE。注意浮点型返回 1,即 TRUE。(即可以检查整数和小数)。

<?php
header("Content-type:text/html;charset=utf-8");
function f($str){
	if (is_numeric($str)){
    	echo "$str 是数字字符串<br><br>";
	}
	else{
	    echo "$str 不是数字字符串<br><br>" ;
	}
}
f("a678");
f("678");
f("3.14");

?>

php如何检测字符串是否为数字

方法2:强制类型转换并比较是否相等

<?php
header("Content-type:text/html;charset=utf-8");
function f($str){
	$num=(float)$str;
	if (strcmp($num,$str)==0){
    	echo "$str 是数字字符串<br><br>";
	}
	else{
	    echo "$str 不是数字字符串<br><br>" ;
	}
}
f("3.14");
f("a678");
f("678");
f("23d5");
?>

php如何检测字符串是否为数字

说明:

1、强制类型转换

只需在要转换的变量之前加上用括号括起来的目标类型,括号中允许使用的变量类型如下所示:

<?php
header('content-type:text/html;charset=utf-8');   
$str = '123.456abc';
echo '原变量 $str 的类型为:'.gettype($str)."<br>";
$int = (int)$str;
echo '变量 $int 的类型为:' . gettype($int) . '<br>';
$float = (float)$str;
echo '变量 $float 的类型为:' . gettype($float) . '<br>';
$bool = (bool)$str;
echo '变量 $bool 的类型为:' . gettype($bool). '<br>';
$arr = (array)$str;
echo '变量 $arr 的类型为:' . gettype($arr);
?>

php如何检测字符串是否为数字

2、strcmp() 函数

strcmp() 函数比较两个字符串。

strcmp(string1,string2)
返回值:该函数返回:
  • 0 - 如果两个字符串相等

  • <0 - 如果 string1 小于 string2

  • >0 - 如果 string1 大于 string2

关于“php如何检测字符串是否为数字”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注亿速云行业资讯频道,小编每天都会为大家更新不同的知识点。

推荐阅读:
  1. PHP判断是否为数字型或是否为数字型字符串
  2. JS判断字符串是否为数字

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

php

上一篇:golang值接收者和指针接收者的区别是什么

下一篇:php字符串如何只保留字母

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》