php下intval()和(int)转换使用与区别

yipeiwu_com6年前PHP代码库
复制代码 代码如下:

<?php
echo "<br/>数值强制转换:";
$string="2a";
$string1=intval($string);
echo '$string1的值:'.$string1.'$string2的值:';//单引号不会输出变量,将原样输出
$string2=(int)($string);
echo $string2
?>
 

手册上查不到。
这也是手册上说的:引用:
int intval ( mixed $var [, int $base ] )
通过使用特定的进制转换(默认是十进制),返回变量 var 的 integer 数值。 如果只有这点区别的话,那么我喜欢用(int)处理10进制的情况是不错的选择吧?
没啥区别,一般用(int),另外还有 float, string, array 等

intval()而言,如果参数是字符串,则返回字符串中第一个不是数字的字符之前的数字串所代表的整数值。如果字符串第一个是‘-',则从第二个开始算起。

如果参数是符点数,则返回他取整之后的值。

当然intval()返回的值在一个4字节所能表示的范围之内(-2147483648~2147483647),对于超过这个范围的值将用边界值代替。

例:intval("A")=0; intval(12.3223)=12; intval("1123Asdfka3243")=1123;
int();
例:
$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字符串转换为int

有时,重要的是有一个int格式的变量的值。 eaxmple,如果你的访问者填写表单,随着年龄的领域,这应该是一个int。然而,在$ _POST数组,你把它作为一个字符串。
转换为int的PHP字符串是很容易的。我们需要使用之前,你的变量类型casting.So你需要使用(INT)。下面是一个例子,如何做到这一点:
复制代码 代码如下:

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

如果要检查的代码REALY工程,我们可以使用===运算符。这个操作符检查不仅值,但类型以及。这样的代码看起来应该是这样的:
复制代码 代码如下:

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

还有一个问题是开放的。如果我们的字符串是不是一个单纯的数字的字符串,会发生什么。我的意思是有其他字符串中的字符。在这种情况下,转换操作尝试最好的和可以转换的字符串,如果只有空间是有,如果没有有效的字符后的数字值。它的工作原理如下:

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

相关文章

PHP使用in_array函数检查数组中是否存在某个值

本文实例讲述了PHP使用in_array函数检查数组中是否存在某个值的方法。分享给大家供大家参考。具体分析如下: PHP使用in_array()函数检查数组中是否存在某个值,如果存在则返...

php报错502badgateway解决方法

目前lnmp一键安装包比较多的问题就是502 Bad Gateway,大部分情况下原因是在安装php前,脚本中某些lib包可能没有安装上,造成php没有编译安装成功。 解决办法:可以尝试...

PHP-redis中文文档介绍

phpredis是php的一个扩展,效率是相当高有链表排序功能,对创建内存级的模块业务关系 很有用;以下是redis官方提供的命令使用技巧: 下载地址如下: https://...

PHP数组相关函数汇总

本文总结了PHP数组相关的函数。分享给大家供大家参考。具体如下: 这里包括函数名和用法说明,没有详细的代码范例。感兴趣的朋友可以查阅本站相关的函数用法。 数组的相关处理函数 curren...

PHP+sqlite数据库操作示例(创建/打开/插入/检索)

本文实例讲述了PHP+sqlite数据库操作的方法。分享给大家供大家参考,具体如下: SQLite是一款轻型的数据库,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占...