2012-08-16 245 views
0

我從XML文件中提取結果,並將其中一個值(實際數字ID)作爲字符串讀取。該值被修剪並且沒有空格。將字符串轉換爲整數?

 if (!is_numeric($id)) 
     { 
      echo "<p>$id is NOT numeric"; 
     } else { 
      echo "<p>$id is numeric"; 
     } 

的可變643394的響應是:我通過與is_numeric檢查觀察到了這種

643394 is NOT numeric 

PHP具有如下功能的整數轉換爲字符串(strtoint),但是我沒有找到一個功能去其他方式(inttostr)。

是否可以將字符串「1234」轉換爲整數1234?

+3

INTVAL()將其轉換爲您或(INT) $ ID; – Waygood 2012-08-16 16:25:45

+0

必須有一些其他字符是字符串的一部分,因爲'is_numeric('643394')'應該返回'true'。 'var_dump($ id);'給你什麼? – jeroen 2012-08-16 16:27:29

+0

掛上,你想要將int轉換爲字符串,反之亦然? – 2012-08-16 16:28:23

回答

4

投下你的字符串轉換爲整數明確

$id = (int) $id; 

裁判:http://php.net/manual/en/language.types.type-juggling.php

+1

我可以問使用'intval()'的優點嗎? – VictorKilo 2012-08-16 16:29:38

+1

@VictorKilo - 根據https://wiki.phpbb.com/Best_Practices:PHP,使用轉換函數比直接轉換稍慢。有關詳細解釋,請參閱http://stackoverflow.com/questions/5339590/when-should-one-use-intval-and-when-int – j08691 2012-08-16 16:32:51

1

字符串到整數的轉換可以INTVAL($ ID)來完成或強制使用(INT)的$ id

整數類型
0

這將幫助你:

$id = $id + 0;