//规定表的编码
header("Content-type:text/html;charset=utf-8");
$name="数据表的名称"
//1.生成文件名
$filename = $name.'.sql';
//2.将创建的数据放到文件中
$str = "-- -----------------------------------------------\r\n";
$str .= "-- Table structure for `".$name."` \r\n";
$str .= "-- ----------------------------------------------\r\n";
$str .= "DROP TABLE IF EXISTS `".$name."`; \r\n";
//生成文件的创建方式
$columns = DB::query("show create table $name");
$str .=$columns[0]['Create Table'].";\r\n";
//3.判断文件是否存在
if(file_exists($filename)){
//删除文件重新生成
unlink($filename);
}
//4.生成数据
$str .= "-- ----------------------------------------------\r\n";
$str .= "-- Records for `".$name."` \r\n";
$str .= "-- ----------------------------------------------\r\n";
//5.生成文件
file_put_contents($filename,$str,FILE_APPEND);
//6.读取数据
$sql = "select * from $name";
$data = DB::query($sql);
if(count($data)>0){
foreach($data as $k=>$v){
$sqlStr = "INSERT INTO `$name` VALUES(";
foreach($v as $key=>$val){
$sqlStr .= '"'.$val.'", ';
}
//去掉最后一个逗号和空格
$sqlStr = substr($sqlStr,0,strlen($sqlStr)-2);
$sqlStr.=");\r\n";
//7.生成最终文件
file_put_contents($filename,$sqlStr,FILE_APPEND);
}
}