我是靠谱客的博主 飞快鸭子,最近开发中收集的这篇文章主要介绍php怎么检测字符串是否只含数字,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

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

php检测字符串是否只含数字的两种方法:

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

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

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

is_numeric ($var)
登录后复制
  • $var:要检测的变量。

如果指定的变量$var是数字和数字字符串则返回 TRUE,否则返回 FALSE

<?php
header("Content-type:text/html;charset=utf-8");
$str1="a678";
$str2="678";
$str3="3.14";
if (is_numeric($str1)){
    echo "$var_name1 是数字字符串<br><br>";
}
else{
    echo "$str1 不是数字字符串<br><br>" ;
}
if (is_numeric($str2)){
    echo "$str2 是数字字符串<br><br>";
}
else{
    echo "$str2 不是数字字符串<br><br>";
}
?>
登录后复制

1.png

方法2:使用preg_replace()函数和“===”运算符检测

  • 使用preg_replace()函数配合正则表达式可以过滤字符,返回数字字符,组成一个数字字符串

  • 使用“===”运算符比较数字字符串和原字符串是否相等,相等则字符串只含数字

<?php
header("Content-type:text/html;charset=utf-8");
function f($str){
	$result = preg_replace("/[^0-9]/", "", $str);
	if($result===$str){
    	echo "$str 字符串中只含数字<br><br>";
	}
	else{
	    echo "$str 字符串中还有其他字符<br><br>" ;
	}
}

f("a678");
f("678");
?>
登录后复制

preg_replace("/[^0-9]/", "", $str)的意思为匹配除了0~9间的数字以外的字符,并将这些字符替换为空字符,即删除这些字符即可。那么就只剩下数字字符了。

2.png

说明:preg_replace 函数执行一个正则表达式的搜索和替换,是一个强大的字符串替换处理函数,该它的语法格式为

preg_replace($pattern, $replacement, $subject [, $limit = -1 [, &$count]])
登录后复制

搜索 subject 中匹配 pattern 的部分, 以 replacement 进行替换。

参数说明:

  • $pattern: 要搜索的模式,可以是字符串或一个字符串数组。

  • $replacement: 用于替换的字符串或字符串数组。

  • $subject: 要搜索替换的目标字符串或字符串数组。

  • $limit: 可选,对于每个模式用于每个 subject 字符串的最大可替换次数。 默认是-1(无限制)。

  • $count: 可选,为替换执行的次数。

推荐学习:《PHP视频教程》

以上就是php怎么检测字符串是否只含数字的详细内容,更多请关注靠谱客其它相关文章!

最后

以上就是飞快鸭子为你收集整理的php怎么检测字符串是否只含数字的全部内容,希望文章能够帮你解决php怎么检测字符串是否只含数字所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(63)

评论列表共有 0 条评论

立即
投稿
返回
顶部