在 PHP 中執行 MySQL *.sql 檔案
建立網站資料庫時,可能會遇到需要執行 的場景。 PHP 中的 sql 檔案來自動產生網站。雖然 Zend_Framework 可能很有用,但由於 SQL 語句不一致,直接從 PHP 執行 .sql 檔案可能會很困難。
解決方案:使用 shell_exec()
建議的方法是使用 shell_exec() 呼叫 mysql 工具來執行 *.sql 腳本。以下是範例:
$command = 'mysql' . ' --host=' . $vals['db_host'] . ' --user=' . $vals['db_user'] . ' --password=' . $vals['db_pass'] . ' --database=' . $vals['db_name'] . ' --execute="SOURCE ' . $script_path ;
此指令使用必要的參數建立一個 MySQL 執行指令,以執行 $script_path 中指定的 *.sql 檔案。
shell_exec() 之間的差異和 exec()
雖然這兩個函數都執行外部命令,但它們有一些區別。 shell_exec() 捕獲命令的輸出並將其作為字串傳回,而 exec() 則傳回命令執行的狀態。在這種情況下,首選 shell_exec() 來取得 MySQL 指令的輸出。
其他注意事項
執行*.sql 檔案時,請確保命令包含所有內容必要的參數(db_host、db_user、db_pass、db_name)並且您有足夠的權限來執行該腳本。此外,使用 --execute="SOURCE ..." 選項而不是
以上是如何使用 shell_exec() 從 PHP 執行 MySQL *.sql 檔案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!