2010-05-21 42 views
28

剛開始使用mysqli。如果我在小網站上使用小數據集(流量方面),我是否真的需要一直使用這些數據?

$result->close(); 
$mysqli->close(); 

另外,對於有人自定義PHP和MySQL工作沒有框架,mysqli是與MySQL交互的一般首選方式?

回答

3

你應該養成清理的習慣(一旦你完成就關閉),或者資源泄漏會逐漸積累,直到它們影響性能。

至於什麼樣的數據庫層,學習PDO應該是值得的,因爲它是精心設計的,並與所有主要數據庫兼容。

+0

+1良好的做法和做清理。 -1到pdo。如果沒有真正的需要,只會增加另一層競爭力。 – PatomaS 2012-10-20 04:54:59

28

PHP將在腳本結尾關閉所有打開的文件和數據庫連接。當你完成連接時手動完成這個練習是很好的做法,但如果你沒有做到這一點就不會有災難。如果你有一個將在整個腳本中使用的數據庫連接,那麼你可以把它打開。

+1 PDO

+0

我會把它留在這裏... http://php.net/manual/en/mysqli.persistconns.php – solgar 2016-01-17 18:31:45

16

我感到一種更新這個線程需要...

根據目前的資料,你應該總是除了$ mysql-使用$ mysql->殺() > close()方法。

$thread = $mysqli->thread_id; 
$mysqli->kill($thread); 
$mysqli->close(); 

(作爲一個方面說明,我問Oracle開發人員如何使用PDO與MySQL和他們泄氣了。他們使用的MySQLi獨佔。PDO沒有被維護,它不支持很多MySQL的當前功能。 )編輯:過時的評論。

編輯:按照建議切換語句順序。

+3

如前所述,這是一個很好的做法,你自己清理,但文檔,就我而言在撰寫本文時,請不要提及您應該使用它。 +1爲好的做法。 – PatomaS 2012-10-20 04:59:11

+1

PDO聲明對我來說似乎是可疑的,我敢肯定你會在他們的GitHub倉庫中看到PDO相關文件的最近時間戳。你有沒有確鑿的證據來支持它? – GordonM 2013-12-24 21:21:46

+3

除了@GordonM提到的內容,在答案中的引用缺少關於*「你應該總是使用$ mysql-> kill()」*的說法。 – hakre 2013-12-24 21:25:00