Home  >  Article  >  Backend Development  >  The use and difference between intval() and (int) conversion under PHP_PHP Tutorial

The use and difference between intval() and (int) conversion under PHP_PHP Tutorial

WBOY
WBOYOriginal
2016-07-21 15:51:101147browse

Copy code The code is as follows:

echo "
Value cast:";
$string="2a";
$string1=intval($string);
echo 'The value of $string1:'.$string1.'The value of $string2:';//No single quotes Variables will be output and will be output as is
$string2=(int)($string);
echo $string2
?>


Cannot be found in the manual .
This is also what the manual says: Quote:
int intval (mixed $var [, int $base ])
Returns the integer value of variable var by using a specific base conversion (default is decimal) . If there is only this difference, then I like to use (int) to deal with decimal situations. Is it a good choice?
There is no difference, generally use (int), there are also float, string, array, etc.

intval(), if the parameter is a string, the string is returned The integer value represented by the string of digits preceding the first non-digit character in . If the first character in the string is ‘-’, counting starts from the second character.

If the parameter is a dot number, its rounded value is returned.

Of course, the value returned by intval() is within the range that can be represented by a 4-byte value (-2147483648~2147483647). Values ​​exceeding this range will be replaced by boundary values.

Example: intval("A")=0; intval(12.3223)=12; intval("1123Asdfka3243")=1123;
int();
Example:
$a =0.13;
$b=(int)$a; //$b=0;

$a=0.99;
$b=(int)$a; //$b= 0;

$a=1.01;
$b=(int)$a; //$b=1;

$a=1.99;
$b=( int)$a; //$b=1;

PHP string converted to int

Sometimes, it is important to have the value of a variable in int format. eaxmple, if your visitor fills out the form with the age field, this should be an int. However, in the $_POST array, you are getting it as a string.
Converting PHP string to int is easy. We need to use your variable type before casting.So you need to use (INT). Here is an example of how to do this:
Copy the code The code is as follows:

$str = "10";
$num = (int)$str;?>

If you want to check that the code REALY works, we can use the === operator. This operator checks not only the value, but the type as well. Such code should look like this:
Copy code The code is as follows:

$ str = "10";
$num = (int)$str;
if ($str === 10) echo "String";
if ($num === 10) echo "Integer ";
?>

There is one more question open. What happens if our string is not simply a string of numbers. I mean there are other characters in the string. In this case, the conversion operation tries the best and can convert the string if only space is there and if there are no valid characters after the numeric value. It works like this:

“10” - > 10
“10.5” - > 10
“10,5” - > 10
“10” - > 10
“10” - > 10
“10test” - > 10
“test10” - > 0

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/319207.htmlTechArticleCopy the code as follows: ?php echo "br/numeric cast:"; $string="2a"; $string1=intval($string); echo 'The value of $string1:'.$string1.'The value of $string2:';//Single quotes will not be output...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn