2012-09-14 106 views
3

我使用的功能我應該使用哪種方法,爲什麼?

$DBConn = mysql_connect ("localhost" , "testuser" , "test123")

在釋放連接時建立在PHP數據庫連接,我使用

if(is_resource($DBConn)) 

檢查連接當前是否設置與否。我想知道的是它有效地做到這一點,或者我應該檢查這樣

if($DBConn) 

我想知道的督促和同時使用語句的利弊的連接。

+0

correction prod - >專業人員 – Mayank

+5

如果您正在編寫一些花哨的新代碼,請考慮從'mysql_ *'切換到移到PDO的好時機:) – Fluffeh

+1

沒有什麼區別值得一提。使用第二個選項,閱讀起來更簡單。 – Jon

回答

1

首先,你不應該再使用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,「」和空數組。

0

成功連接或查詢時返回資源標識符。因此函數is_resource將把變量標識爲資源或爲false。

如果If表達式評估爲TRUE,PHP將執行語句,如果它評估爲FALSE,則不會。

0

他們兩個基本上是一樣的,雖然有人可能會說,稱爲is_resource方法具有調用函數的開銷,但if也必須確定這一點,並且它們兩者之間幾乎沒有差別。其所有關於你的編碼和可讀性的風格我猜

相關問題