轉化方式
在PHP中胎食,我們可以使用3種方式將字符串轉化為整數。
1.強制類型轉換方式
強制類型轉換方式肴沫,就是“在要轉換的變量之前加上用括號括起來的目標類型”的方式。
<?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]);
3.格式化字符串方式
格式化字符串方式,是利用sprintf
的%d格式化指定的變量揽祥,以達到類型轉換的目的讽膏。
<?php
$foo = "1"; // $foo 是字符串類型
$bar = sprintf("%d", $foo); // $bar 是字符串類型
?>
嚴格意義上講sprintf
的轉換結果還是string型,因此它不應該算是字符串轉化為整數的方式拄丰。但是經過他處理之后的字符串值確實已經成為了“被強制轉化為字符串類型的整數”
府树。
性能
int > intval > sprintf
從可讀性
角度上講,sprintf方式代碼比較長料按,而且其結果有可能還需要再次進行強制類型轉換奄侠,而intval函數是典型的面向過程式轉換,強制類型轉換則比較直接的將“我要轉化”這個思想傳遞給閱讀者载矿。
從效率上
講垄潮,強制類型轉換方式也是最快速的轉化方式(可直接獲得整型的變量值)。