pdo实现数据库导出
header("content-Type: textml;
charset=utf-8");
//备份数据库
$host="192.168.1.149";
$user="root";
//数据库账号
$password="root";
//数据库密码
$dbname="weixin";
//数据库名称 //这里的账号、密码、名称都是从页面传过来的
$pdo=newPDO("mysql:host=$host;
dbname=$dbname",$user,$password);
if(!$pdo)//连接mysql数据库
{
echo'数据库连接失败,请核对后再试';
exit;
}
$pdo->exec("set names 'utf8'");
$mysql="set charset utf8;
\r\n";
$q1=$pdo->query("show tables");
//获取数据库的表名
while($t=$q1->fetch())
{
$table=$t[0];
$q2=$pdo->query("show create table `$table`");
$sql=$q2->fetch();
【pdo实现数据库导出】$mysql.=$sql['Create Table'].";
\r\n";
$q3=$pdo->query("select*from `$table`");
while($data=https://www.it610.com/article/$q3->fetch(PDO::FETCH_ASSOC))
{
$keys=array_keys($data);
$keys=array_map('addslashes',$keys);
$keys=join('`,`',$keys);
$keys="`".$keys."`";
$vals=array_values($data);
$vals=array_map('addslashes',$vals);
$vals=join("','",$vals);
$vals="'".$vals."'";
$mysql.="insert into `$table`($keys) values($vals);
\r\n";
}
}
$filename=$dbname.".sql";
//存放路径,默认存放到项目最外层
$fp=fopen($filename,'w');
fputs($fp,$mysql);
fclose($fp);
//header实现下载
header('content-type:application/octet-stream');
header("content-disposition:attachment;
filename=$filename");
//读取文件内容
readfile($filename);
?>
推荐阅读
- Docker应用:容器间通信与Mariadb数据库主从复制
- 关于QueryWrapper|关于QueryWrapper,实现MybatisPlus多表关联查询方式
- MybatisPlus使用queryWrapper如何实现复杂查询
- python学习之|python学习之 实现QQ自动发送消息
- 孩子不是实现父母欲望的工具——林哈夫
- opencv|opencv C++模板匹配的简单实现
- Node.js中readline模块实现终端输入
- java中如何实现重建二叉树
- 人脸识别|【人脸识别系列】| 实现自动化妆
- paddle|动手从头实现LSTM