源码技术 发表于 2024-8-24 10:34:57

install.php和uninstall.php安装卸载程序乐众主机

【开发者帮助】6、了解install.php和uninstall.php安装卸载程序
安装插件时,系统会检测是否存在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");
}



页: [1]
查看完整版本: install.php和uninstall.php安装卸载程序乐众主机