我使用的功能我應該使用哪種方法,爲什麼?
$DBConn = mysql_connect ("localhost" , "testuser" , "test123")
在釋放連接時建立在PHP數據庫連接,我使用
if(is_resource($DBConn))
檢查連接當前是否設置與否。我想知道的是它有效地做到這一點,或者我應該檢查這樣
if($DBConn)
我想知道的督促和同時使用語句的利弊的連接。
我使用的功能我應該使用哪種方法,爲什麼?
$DBConn = mysql_connect ("localhost" , "testuser" , "test123")
在釋放連接時建立在PHP數據庫連接,我使用
if(is_resource($DBConn))
檢查連接當前是否設置與否。我想知道的是它有效地做到這一點,或者我應該檢查這樣
if($DBConn)
我想知道的督促和同時使用語句的利弊的連接。
首先,你不應該再使用mysql_xxx
函數;有很多文章討論了使用PDO/mysqli編寫語句等的好處。
通過查看手冊,它指出,它返回一個鏈接標識符或false
失敗。你不應該假設這個標識符是什麼,它通常是一個資源,但它也可能是一個對象或整數。我想簡單地否定容易條件:
if (false !== $DBConn) {
// do something with the database
}
,或者:
if (false === $DBConn) {
throw new Exception("Could not connect to database");
}
// do something with the database
編輯
使用if ($DBConn) { ... }
是好的爲好,因爲它基本上是0相反的,假的, null,「」和空數組。
成功連接或查詢時返回資源標識符。因此函數is_resource
將把變量標識爲資源或爲false。
如果If
表達式評估爲TRUE
,PHP將執行語句,如果它評估爲FALSE
,則不會。
他們兩個基本上是一樣的,雖然有人可能會說,稱爲is_resource
方法具有調用函數的開銷,但if
也必須確定這一點,並且它們兩者之間幾乎沒有差別。其所有關於你的編碼和可讀性的風格我猜
correction prod - >專業人員 – Mayank
如果您正在編寫一些花哨的新代碼,請考慮從'mysql_ *'切換到移到PDO的好時機:) – Fluffeh
沒有什麼區別值得一提。使用第二個選項,閱讀起來更簡單。 – Jon