0
我無法將字符串轉換爲int。 陣列$輸入保持下面的值:錯誤的轉換? String => Int
array(3) { [0]=> string(6) "30" [1]=> string(2) "01" [2]=> string(9) "2013" }
首先我刪除,因爲八阱的前導零。所以這是我的代碼:
foreach ($input as $key => $var) {
$input[$key] = trim($var,"0");
$input[$key] = (int)$var;
}
但不幸的是,結果不是statisfying。現在
array(3) { [0]=> int(0) [1]=> int(1) [2]=> int(2013) }
30是零?這怎麼可能?
您的vardump顯示該字符串的長度爲6個字符,即具有30的字符串只應爲2,看起來您在字符串中有一些額外的字符。您可以嘗試將其轉換爲十六進制,並查看這些字符是什麼。 – datasage
你可以preg_replace任何字符不是一個數字與'' –