php下intval()和(int)转换使用与区别
生活随笔
收集整理的這篇文章主要介紹了
php下intval()和(int)转换使用与区别
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
來源:http://www.jb51.net/article/15174.htm
想知道使用intval()和(int)轉換有什么區別?或者說兩者有什么不同,包括功能、定義方面的。或者和使用頻率、效率等。
代碼如下:
<?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下intval()和(int)转换使用与区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 金四税务系统是什么意思
- 下一篇: vim 树形目录插件NERDTree安装