新闻公告/帮助中心

官方最新动态、帮助文档、将会更新到此页面

< 返回新闻列表

【开发者帮助】6、了解install.php和uninstall.php安装卸载程序

发布时间:2024-03-03 17:09:32 小编:乐众-小艾

安装插件时,系统会检测是否存在install.php文件,如果存在,则自动调用该文件。

你可以把插件初始化代码写在里面。如果没有初始化代码,则可以不需要install.php文件。

卸载插件时,系统会检测uninstall.php文件,存在则调用 ,比如安装文件里面写了 创建表功能,卸载卸载文件里面可以写 删除表功能。

为了数据安全,如果不是很必要,请勿写删除表功能,避免表中有数据被删除后无法找回。

比如nokvm插件的安装程序:

// 【创建Nokvm镜像表】

if($ide->mysql->R($ide->mysql->M("SHOW TABLES LIKE  'lzsys_asset_nokvm_iso'"))<>1){
	$ide->mysql->M("DROP TABLE IF EXISTS `lzsys_asset_nokvm_iso`;");
	$ide->mysql->M("CREATE TABLE `lzsys_asset_nokvm_iso` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `api_id` int(11) DEFAULT NULL COMMENT '对应的渠道ID',
  `isoname` varchar(255) DEFAULT NULL COMMENT 'name',
  `isofile` varchar(255) DEFAULT NULL,
  `status` int(11) DEFAULT NULL COMMENT '1=正常 2=禁用',
  `create_time` int(11) DEFAULT NULL,
  `app_id` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC;");
}

比如 nokvm插件的卸载程序


// 【卸载时是否同时删除关联表】

$dell_ = false;   // true = 删除  false = 不删除


// 【删除Nokvm镜像表】

if($dell_==true){
	$ide->mysql->M("DROP TABLE lzsys_asset_nokvm_iso");
}