Home>Article>Backend Development> How to detect whether a string is a number in php
Two detection methods: 1. Use the is_numeric() function to detect whether a string is a numeric string. The syntax is "is_numeric (string)". If TRUE is returned, it is, and vice versa. 2. Convert the string to a numeric type, and then compare the number with the original string to determine whether they are equal. The syntax is "strcmp((float)$str,$str)==0". If TRUE is returned, vice versa. no.
The operating environment of this tutorial: windows7 system, PHP version 8.1, DELL G3 computer
Method 1: Use is_numeric() The function detects that the
string contains only digits, then the string is a numeric string.
The is_numeric() function can detect whether a string is a numeric string.
is_numeric ($var)
$var: Variable to be detected.
Returns TRUE if the specified variable $var is a number or numeric string, otherwise returns FALSE. Note that float returns 1, which is TRUE. (i.e. can check both integers and decimals).
"; } else{ echo "$str 不是数字字符串
" ; } } f("a678"); f("678"); f("3.14"); ?>
Method 2: Cast type conversion and compare for equality
By casting type, Convert the string to a numeric type
Compare the number with the original string to see if they are equal
If they are equal, the original string is a numeric string.
"; } else{ echo "$str 不是数字字符串
" ; } } f("3.14"); f("a678"); f("678"); f("23d5"); ?>
Instructions:
1. Forced type conversion
Just add the target type enclosed in parentheses before the variable to be converted. The variable types allowed in the parentheses are as follows:
(int), (integer): Conversion Integer type;
(bool), (boolean): Convert to Boolean type;
(float), (double), ( real): Convert to floating point type;
(string): Convert to string type;
(array): Convert to array Type;
(object): converted to object type.
"; $int = (int)$str; echo '变量 $int 的类型为:' . gettype($int) . '
'; $float = (float)$str; echo '变量 $float 的类型为:' . gettype($float) . '
'; $bool = (bool)$str; echo '变量 $bool 的类型为:' . gettype($bool). '
'; $arr = (array)$str; echo '变量 $arr 的类型为:' . gettype($arr); ?>
2. strcmp() function
strcmp() function compares two strings.
strcmp(string1,string2)
Return value: | The function returns:
|
---|
Recommended learning: "PHP Video tutorial》
The above is the detailed content of How to detect whether a string is a number in php. For more information, please follow other related articles on the PHP Chinese website!