從PHP中的MySQL表選擇當結果總是字符串。有沒有辦法獲得正確的數據類型?PHP從MySQL選擇和接收條數據類型
考慮我的表:
CREATE TABLE bar(
id INT,
price FLOAT,
name VARCHAR(40));
現在我要做的就是:
$result = mysql_query("SELECT id,price,name FROM bar");
while($row = mysql_fetch_assoc($result))
{
$row['id'] = (int)$row['id'];
$row['price'] = (double)$row['price'];
}
mysql_free_result($result);
有沒有辦法從查詢透明地得到正確的數據類型?
10倍, 特拉維夫
爲什麼你需要這個呢? php是一種動態類型較弱的語言。這就是爲什麼我們喜歡它(是的,我們做;-)。不要試圖改變它。如果你需要一些具有強動態類型的語言(這就是你想要得到的),你可以試試python。 – zerkms 2011-03-23 13:28:05
我也愛PHP,但有些時候,就像在這種情況下,我將它作爲JSON返回,在JavaScript中,我需要它作爲排序機制的數字或字符串。 – aviv 2011-03-23 16:17:29
我不得不同意,PHP中的弱打字實際上可能比它的價值更麻煩,而將數據壓縮成特定類型可以解決弱打字可能導致的大多數問題。看到我在switch語句上的問題,看看可能出錯的地方。 http://stackoverflow.com/questions/4098104/odd-behaviour-in-a-switch-statement – GordonM 2011-03-25 10:20:52