首頁  >  文章  >  後端開發  >  php將字串轉換成int型別

php將字串轉換成int型別

藏色散人
藏色散人原創
2020-08-08 09:42:276513瀏覽

php將字串轉換成int型別的方法:1、在要轉換的變數之前加上用括號括起來的目標型別;2、使用PHP的內建函數intval進行變數的轉換運算;3 、利用sprintf的「%d」格式化指定的變數。

php將字串轉換成int型別

推薦:《PHP影片教學

在PHP中,我們可以使用3種方式將字串轉化為整數。

1.強制型別轉換方式

  強制型別轉換方式,就是「在要轉換的變數之前加上用括號括起來的目標型別」(摘自PHP手冊「型別戲法」節)的方式。

<?php 
$foo = "1"; // $foo 是字符串类型 
$bar = (int)$foo; // $bar 是整型 
?>

  對於整數類型來說,強制轉換類型名稱為int或integer。

2.內建函數方式

  內建函數方式,就是使用PHP的內建函數intval進行變數的轉換運算。

<?php 
$foo = "1"; // $foo 是字符串类型 
$bar = intval($foo); // $bar 是整型 
?>

intval函數的格式為:

int intval(mixed $var [, int $base]); (摘自PHP手册)

  雖然PHP手冊中明確指出,intval()不能用於array和object的轉換。但經過我測試,轉換array的時候不會有任何問題,轉換值為1,而不是想像中的0。恐怕是因為在PHP內部,array類型的變數也被認為是非零值得緣故吧。轉換object的時候,PHP會給出如下的 notice:

Object of class xxxx could not be converted to int in xxxxx.php on line xx

轉換值同樣為1。

3.格式化字串方式

  格式化字串方式,是利用sprintf的%d格式化指定的變量,以達到類型轉換的目的。

<?php 
$foo = "1"; // $foo 是字符串类型 
$bar = sprintf("%d", $foo); // $bar 是字符串类型 
?>

  嚴格意義上講sprintf的轉換結果還是string型,因此它不應該算是字串轉換為整數的方式。但是經過他處理之後的字串值確實已經成為了「被強制轉換為字串類型的整數」。

以上是php將字串轉換成int型別的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn