2009-08-06 115 views
0

我剛剛決定冒險進入PHP的土地,以獲得樂趣和學習,閱讀該PHP是鬆散類型的,$ var的可重用是真的,下面的代碼將不會造成問題嗎?php變量數據類型

$x = 996; 
$x = mysql_query("SELECT aString FROM table1"); 

變量x將存儲爲與996的int數據類型,則第二行之後,將作爲字符串存儲的數據類型與從查詢字符串?

那裏不會有任何鑄造錯誤?

+0

在一個側面說明,請求mysql_query不返回一個字符串。它返回一個MySQL結果ID,它通常是一個指向特定高速緩存結果集的整數。 – Amber 2009-08-06 21:55:09

回答

10

你是對的;這就是「鬆散類型」的定義。但是,這可能不是最佳做法。

http://drupaler.co.uk/blog/baby-dont-you-loose-your-type-me/66是一個很好的閱讀您的主題。

+0

準確地說 - 使用相同的變量名稱只會讓必須閱讀代碼的人感到困惑。 – rpjohnst 2009-08-06 21:54:39

+0

謝謝,我會讀這個。 – jr3 2009-08-06 21:58:33

3

不會有任何錯誤,只是第二行不會給你一個字符串,返回mysql_query稱爲resource(通常是某種不透明句柄/指針的庫函數)內部PHP型

+0

+1謝謝保羅! – jr3 2009-08-06 21:59:11

1

不會有任何鑄造錯誤?

正確!

jalf解釋得很好here