当前位置:Gxlcms > PHP教程 > php导入phpmyadmin导出的sql的实现代码

php导入phpmyadmin导出的sql的实现代码

时间:2021-07-01 10:21:17 帮助过:3人阅读

phpmyadmin导出的sql,交给php程序导入到别的库中,如何实现呢?本文为大家提供了一种不错的方法,有需要的朋友,可以看看。

完整代码如下。

  1. <!--?php
  2. //导入phpmyadmin导出的sql数据
  3. //整理 bbs.it-home.org
  4. //$file表示通过读取sql文件返回的字符串,比如$file2=file_get_contents('db.sql');
  5. function import($file2){
  6. $Db = new Db();
  7. $file2=explode("\n",$file2);//将文件内容按行读入到数组
  8. $c1=count($file2);
  9. for($j=0;$j<$c1;$j++)
  10. {
  11. $ck=substr($file2[$j],0,4);//取每行的前4个字符
  12. if( ereg("#",$ck)||ereg("--",$ck) )//去掉注释
  13. {
  14. continue;
  15. }
  16. $arr[]=$file2[$j];//将去掉注释的文件内容按行读入数组$arr,数组每个元素对应一行
  17. }
  18. $read=implode("\n",$arr); //重新组织文件内容到一个字符串,(按照原来分好的一行一行的)
  19. $sql=str_replace("\r",'',$read);//去掉"\r(回车符)"
  20. $detail=explode(";\n",$sql);
  21. //将经上述整理过的文件内容再次按一条完整的sql语句(以;和\n分隔)导入到数组$detail,
  22. //此时数组detail的每个元素对应一条完整的sql语句
  23. $count=count($detail);
  24. for($i=0;$i<$count;$i++)
  25. {
  26. $sql=str_replace("\r",'',$detail[$i]);//去掉每行sql中的回车符
  27. $sql=str_replace("\n",'',$sql);//去掉换行符
  28. $sql=trim($sql);//去掉前后空格
  29. //现在的$sql
  30. $Db--->query($sql);
  31. }
  32. }
  33. ?>

人气教程排行