主页 > 知识库 > TP5框架实现的数据库备份功能示例

TP5框架实现的数据库备份功能示例

热门标签:Linux服务器 银行业务 Mysql连接数设置 电子围栏 科大讯飞语音识别系统 服务器配置 团购网站 阿里云

本文实例讲述了TP5框架实现的数据库备份功能。分享给大家供大家参考,具体如下:

1、效果图

2、下载扩展类(  \extands\org\Baksql.php)

3、在  \public\static  里新建一个data 文件夹用来存放 .sql  的文件

4、使用方法

controller

?php
namespace app\index\controller;
 
use think\Controller;
 
class Backup extends Controller
{
 //数据库备份
 public function bak(){
  $type=input("tp");
  $name=input("name");
  $sql=new \org\Baksql(\think\Config::get("database"));
  switch ($type)
  {
   case "backup": //备份
    $info = $sql->backup();
    $this->success("$info",'index/backup/bak');
    break;
   case "dowonload": //下载
    $info = $sql->downloadFile($name);
    $this->success("$info",'index/backup/bak');
    break;
   case "restore": //还原
    $info = $sql->restore($name);
    $this->success("$info",'index/backup/bak');
    break;
   case "del": //删除
    $info = $sql->delfilename($name);
    $this->success("$info",'index/backup/bak');
    break;
   default: //获取备份文件列表
    return $this->fetch("bak",["list"=>$sql->get_filelist()]);
  }
 }
}

view

!--我用的是 H+ 的模板,样式可以自己调-->
body class="gray-bg">
div class="wrapper wrapper-content animated fadeInRight">
 div class="row">
  div class="col-sm-12">
   div class="ibox float-e-margins">
    div class="ibox-title">
     h5>数据库备份/h5>
     div class="ibox-tools">
      a class="collapse-link">
       i class="fa fa-chevron-up">/i>
      /a>
     /div>
    /div>
    div class="ibox-content">
     div class="">
      a class="btn btn-primary " href="{:url('bak',['tp'=>'backup'])}" rel="external nofollow" οnclick="return confirm('备份数据的时间较长,确定要备份所有数据吗?')">i class="glyphicon glyphicon-plus">/i> span class="bold">添加备份/span>/a>
     /div>
     table class="table table-striped table-bordered table-hover dataTables-example" style="text-align: center">
      thead>
      tr>
       td>序号/td>
       td>备份名称/td>
       td>备份时间/td>
       td>备份大小/td>
       td>操作/td>
      /tr>
      /thead>
      tbody>
      {volist name="list" id="vo"}
      tr class="gradeX" >
       td>{$key+1}/td>
       td>{$vo.name}/td>
       td>{$vo.time}/td>
       td>{$vo.size}/td>
       td width="25%">
        a href="{:url('bak',['tp'=>'dowonload','name'=>$vo.name])}" rel="external nofollow" class="btn btn-success ">i class="glyphicon glyphicon-download-alt">/i> span class="bold">下载/span>/a>
        a href="{:url('bak',['tp'=>'restore','name'=>$vo.name])}" rel="external nofollow" class="btn btn-info " οnclick="return confirm('备份还原后仅会显示当前备份的数据库的信息,您确定还原备份吗 ?')">i class="glyphicon glyphicon-repeat">/i> span class="bold">还原/span>/a>
        a href="{:url('bak',['tp'=>'del','name'=>$vo.name])}" rel="external nofollow" class="btn btn-warning" οnclick="return confirm('数据库备份一旦删除不可找回,您确定操作吗?')">i class="fa fa-warning">/i> span class="bold">删除/span>/a>
       /td>
      /tr>
      {/volist}
      /tbody>
     /table>
    /div>
   /div>
  /div>
 /div>
/div> 
/body>

5、Refresh the web page!!!over,over,over

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

您可能感兴趣的文章:
  • 在TP5数据库中四个字段实现无限分类的示例
  • tp5(thinkPHP5)框架数据库Db增删改查常见操作总结
  • tp5(thinkPHP5)框架实现多数据库查询的方法
  • tp5(thinkPHP5)框架连接数据库的方法示例
  • tp5(thinkPHP5)操作mongoDB数据库的方法
  • thinkPHP5实现的查询数据库并返回json数据实例
  • thinkPHP5实现数据库添加内容的方法
  • thinkphp5框架实现数据库读取的数据转换成json格式示例
  • PHP7使用ODBC连接SQL Server2008 R2数据库示例【基于thinkPHP5.1框架】
  • ThinkPHP5.1框架数据库链接和增删改查操作示例
  • 基于ThinkPHP5框架使用QueryList爬取并存入mysql数据库操作示例
  • ThinkPHP5.0框架实现切换数据库的方法分析

标签:衡水 广元 衢州 江苏 蚌埠 大理 枣庄 萍乡

巨人网络通讯声明:本文标题《TP5框架实现的数据库备份功能示例》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266