Meghna Preloader

升级包制作

发布日期:2018年10月19日     浏览次数:560
标签: 升级包phpok
联系我们
  • 深圳市锟铻科技有限公司
  • 广东深圳龙华新区民治大道325号东边商务大楼13层1309室
  • admin@phpok.com
  • 518000
  • 0755-23776246
  • 苏生
导语:table.sql 必须是完整的数据表结构,才能进行升级比较,基本上这个操作比较复杂,不推荐使用
delete.txt 主要是删除文件操作,除非涉及到安全漏洞,一般我们没必要执行删除操作
update.sql 这里执行的SQL是不进行判断的,如果涉及到升级一关失败了,可能会出错(除非SQL里有写好相应的判断)

结构

将要升级的文件按原目录结构存放

图片

和程序要一起打包的文件有:

version.txt:版本信息

delete.txt:要删除的文件清单(一行一个文件)

table.sql:新版的数据表结构文件,用于执行比较新旧版本数据结构,并调整更改

update.sql:要执行的SQL文件(单独执行)

run.php:如果升级涉及到比较复杂的操作,可以在这里写PHP文件引入执行

升级原理顺序

  1. 远程获取升级包数据

  2. 将 ZIP 压缩包下载到 _data 目录下

  3. 将下载好的压缩包解压到 _data/update/ 目录下

  4. 归纳整理文件(主要是收集:version.txt,delete.txt,table.sql,update.sql,run.php)

  5. 将 framework 这个目录的文件及文件夹移到现有程序的核心框架(可能用户会因为安全原因改名)

  6. 移动其他目录文件(或创建目录)

  7. 删除delete.txt清单中的文件【非必须】

  8. 执行 table.sql 操作(比较表结构,更新到最新的表结构)【非必须】

  9. 运行 update.sql 或是其他的 sql 文件【非必须】

  10. 运行 run.php 执行复杂的升级操作【非必须】

  11. 删除 _data/update/ 下的文件

  12. 基于 version.txt 更新版本记录

特别说明

table.sql 必须是完整的数据表结构,才能进行升级比较,基本上这个操作比较复杂,不推荐使用

delete.txt 主要是删除文件操作,除非涉及到安全漏洞,一般我们没必要执行删除操作

update.sql 这里执行的SQL是不进行判断的,如果涉及到升级一关失败了,可能会出错(除非SQL里有写好相应的判断)

run.php 重点在这里,这个文件意味着可以完全嵌入执行PHP,可以用PHP来写数据表的增删查改,也支持文件的删除,也支持数据表结构的更新等等!一般OK程序的升级都会有这个的(纯文件覆盖更新连这个都可以忽略的)

提交新评论