如何用ThinkPHP開發一個Database Backup功能
就是各大CMS的Database Backup還原功能如何?
回複內容:
如何用ThinkPHP開發一個Database Backup功能
就是各大CMS的Database Backup還原功能如何?
從開源部落格系統Emlog裡找了一段:
https://github.com/emlog/emlog/blob/master/src/admin/data.php
/** * 備份資料庫結構和所有資料 * * @param string $table 資料庫表名 * @return string */function dataBak($table){ $DB = MySql::getInstance(); $sql = "DROP TABLE IF EXISTS $table;\n"; $createtable = $DB->query("SHOW CREATE TABLE $table"); $create = $DB->fetch_row($createtable); $sql .= $create[1].";\n\n"; $rows = $DB->query("SELECT * FROM $table"); $numfields = $DB->num_fields($rows); $numrows = $DB->num_rows($rows); while ($row = $DB->fetch_row($rows)){ $comma = ""; $sql .= "INSERT INTO $table VALUES("; for ($i = 0; $i < $numfields; $i++){ $sql .= $comma."'".mysql_escape_string($row[$i])."'"; $comma = ","; } $sql .= ");\n"; } $sql .= "\n"; return $sql;}