如何正確實(shí)現(xiàn)PHP字符串轉(zhuǎn)換為數(shù)值的需求
PHP語(yǔ)言中的函數(shù)是一個(gè)龐大的功能強(qiáng)大的集合。我們需要掌握這些函數(shù),靈活的運(yùn)用才能編寫出性能高的代碼程序。我們今天就向大家介紹有關(guān)PHP字符串轉(zhuǎn)換為數(shù)值的相關(guān)函數(shù)的使用方法。
#t#當(dāng)一個(gè)字符串被當(dāng)作數(shù)字來(lái)求值時(shí),根據(jù)以下規(guī)則來(lái)決定結(jié)果的類型和值。
如果包括“.”,“e”或“E”其中任何一個(gè)字符的話,字符串被當(dāng)作 float 來(lái)求值。否則就被當(dāng)作整數(shù)。
該值由字符串最前面的部分決定。飛飛,Asp技術(shù)樂(lè)園如果字符串以合法的數(shù)字?jǐn)?shù)據(jù)開(kāi)始,就用該數(shù)字作為其值,否則其值為 0(零)。合法數(shù)字?jǐn)?shù)據(jù)由可選的正負(fù)號(hào)開(kāi)始,后面跟著一個(gè)或多個(gè)數(shù)字(可選地包括十進(jìn)制分?jǐn)?shù)),后面跟著可選的指數(shù)。飛飛Asp!技術(shù)樂(lè)園指數(shù)是一個(gè)“e”或者“E”后面跟著一個(gè)或多個(gè)數(shù)字。
- < ?php
- $foo = 1 + "10.5";
// $foo is float (11.5)- $foo = 1 + "-1.3e3";
// $foo is float (-1299)- $foo = 1 + "bob-1.3e3";
// $foo is integer (1)- $foo = 1 + "bob3";
// $foo is integer (1)- $foo = 1 + "10 Small Pigs";
// $foo is integer (11)- $foo = 4 + "10.2 Little Piggies";
// $foo is float (14.2)- $foo = "10.0 pigs " + 1;
// $foo is float (11)- $foo = "10.0 pigs " + 1.0;
// $foo is float (11)- ?>
如果想測(cè)試本節(jié)中的任何PHP字符串轉(zhuǎn)換為數(shù)值的例子,可以拷貝和粘貼這些例子并且加上下面這一行自己看看會(huì)發(fā)生什么
- < ?php
- echo "\$foo==$foo; type is " .
gettype ($foo) . "< br />\n";- ?>
不要指望在將一個(gè)字符轉(zhuǎn)換成整型時(shí)能夠得到該字符的編碼(可能也會(huì)在 C 中這么做)。如果希望在字符編碼和字符之間實(shí)現(xiàn)PHP字符串轉(zhuǎn)換為數(shù)值,請(qǐng)使用 ord() 和 chr() 函數(shù)。