更新:感謝所有幫助人員,我決定嘗試編寫自己的PHP類來處理MySQL請求。寫我自己的MySQL庫?這是個好主意嗎?
現在我面臨着一個問題,當我試圖從mysql_
到mysqli_
功能進行切換,在我有字面上數以萬計的PHP/MySQL的代碼行和查詢的分散在數百個文件,他們都使用的功能,如mysql_query
,mysql_num_rows
,mysql_fetch_assoc
等。通過並改變這些行(甚至與查找/替換),以mysqli_
函數與準備好的語句和所有是痛苦的,但如果在未來的PHP.net會決定發佈一些其他的東西,而這些東西會使mysqli_
函數不被使用?
所以現在我正在考慮編寫我自己的MySQL庫(是你稱之爲?),它調用mysqli_
函數並將其包含在我的所有文件中。這樣,如果我將來需要改變其他的東西,理論上我可以改變我的「圖書館」中的功能一次,改變會反映在所有頁面上,而不是手動進行手動修改。
這是個好主意嗎?我在網上找到了一個名爲MeekroDB的東西,但首先我不確定它是否是我正在尋找的東西,其次他們要收取50美元來商業使用(我想這樣做)。是否有其他免費解決方案,還是我只是在浪費我的時間?
任何意見/反饋是讚賞:)
編輯:在這種情況下尚不清楚,它並不是因爲如果我做的,我正在做的查詢所有文件到我的數據庫的連接到數據庫。我有一個functions.php文件,用於連接到MySQL數據庫,並在我的所有其他文件中使用我的include
文件。我的問題更多地涉及到功能,如mysql_query
,mysql_num_rows
和mysql_fetch_assoc
。
這裏的問題是,你有你的數據庫代碼「分散在數百個文件」。你需要重構以避免這種情況。 –
我該怎麼做?我的意思是,我有一個functions.php文件,包括我自己編寫的所有函數和該文件中的數據庫連接,但是如何防止在單獨的文件中創建'mysql_query',或者在文件中使用'mysql_fetch_assoc'我需要它嗎? – Charles
您可以通過從模塊中抽象出數據庫邏輯並在「更高級別」上使用它們來避免這種情況。我強烈建議尋找像Zend,Laravel或CodeIgniter這樣的PHP框架!他們幫助你避免這種情況。 – mpaepper