本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑
方法1:利用is_numeric()函数
<?php
header("content-type:text/html;charset=utf-8");
function findNum($str) {
$str = trim($str);
if (empty($str)) {
echo '';
}else{
$result = '';
for ($i = 0; $i < strlen($str); $i++) {
if (is_numeric($str[$i])) {
$result .= $str[$i];
}
}
echo $result;
}
}
$str = '0我是123456一段测试的字789符串0';
findNum($str);
?>
利用for循环遍历字符串$str,使用is_numeric()函数判断
$str[$i]
是否为数字字符。is_numeric()函数可以检测变量是否为数字或数字字符串。在循环体中使用is_numeric($str[$i])判断该$str[$i]字符是不是数字字符;如果是则取出来,使用 “.=”拼接成数字子串。
看看输出结果:
01234567890
方法2:使用preg_replace()函数
<?php
$str ='0我是123456一段测试的字789符串0';
$result = preg_replace("/[^0-9]/", "", $str);
echo $result;
?>