组保留的标签 余下为需要删除的标签
unset($oldtag[$key]);
}
}
}
if (!empty($oldtag)) {
$tagids = array();
foreach ($oldtag as $tagid => $tagname) {
$tagids[] = $tagid;
}
well_oldtag_delete($tagids, $tid);
}
$r = well_tag_process($tid, $fid, $create_tag, $tagarr);
return $r;
}
// 删除标签和绑定的主题
function well_oldtag_delete($tagids, $tid)
{
$pagesize = count($tagids);
$arrlist = well_tag_find_by_tagids($tagids, 1, $pagesize);
$delete_tagids = array(); // 删除
$tagids = array();
$n = 0;
foreach ($arrlist as $val) {
++$n;
if (1 == $val['count']) {
// 只有一个主题
$delete_tagids[] = $val['tagid'];
} else {
$tagids[] = $val['tagid'];
}
}
!empty($delete_tagids) and well_tag_delete($delete_tagids);
$arlist = well_tag_thread_find_by_tid($tid, 1, $n);
if ($arlist) {
$ids = array();
foreach ($arlist as $val) $ids[] = $val['id'];
well_tag_thread_delete($ids);
}
!empty($tagids) and well_tag_update($tagids, array('count-' => 1));
}
// 标签数据处理 $arr=新提交的数组 $tagarr=保留的旧标签
function well_tag_process($tid, $fid, $new_tags = array(), $tagarr = array())
{
if (empty($tid)) return '';
// 新标签处理入库
if ($new_tags) {
$threadarr = array();
$tagids = array();
$i = 0;
$size = 5;
$n = count($tagarr);
$n = $n > $size ? $size : $size - $n;
foreach ($new_tags as $name) {
++$i;
$name = trim($name);
$name = stripslashes($name);
$name = strip_tags($name);
$name = str_replace(array(' ', '#', "@", "$", "%", "^", '&', '·', '<', '>', ';', '`', '~', '!', '¥', '……', ';', '?', '?', '-', '—', '_', '=', '+', '.', '{', '}', '|', ':', ':', '、', '/', '。', '[', ']', '【', '】', '‘', ' ', ' ', ' ', ' ', ' '), '', $name);
$name = htmlspecialchars($name, ENT_QUOTES);
if ($name && $i <= $n) {
// 查询标签
$read = well_tag_read_name($name);
if ($read) {
// 存在 count+1
$tagids[] = $read['tagid'];
} else {
// 入库
$arr = array('name' => $name, 'count' => 1);
$tagid = well_tag_create($arr);
FALSE === $tagid and message(-1, lang('create_failed'));
$read = array('tagid' => $tagid, 'name' => $name);
}
$tag_thread = array('tagid' => $read['tagid'], 'tid' => $tid);
$threadarr[] = $tag_thread;
$tagarr[$read['tagid']] = $read['name'];
}
}
!empty($threadarr) and tag_thread_big_insert($threadarr);
!empty($tagids) and well_tag_update($tagids, array('count+' => 1));
}
$json = empty($tagarr) ? '' : xn_json_encode($tagarr);
return $json;
}
?> $v = implode(",", $v);
$temp[] = $v;
}
// 去掉重复的字符串,也就是重复的一维数组
$temp = array_unique($temp);
// 再将拆开的数组重新组装
$output = array();
foreach ($temp as $k => $v) {
if ($stkeep) $k = $starr[$k];
if ($ndformat) {
$temparr = explode(",", $v);
foreach ($temparr as $ndkey => $ndval) $output[$k][$ndarr[$ndkey]] = $ndval;
} else $output[$k] = explode(",", $v);
}
return $output;
}
// 合并二维数组 如重复 值以第一个数组值为准
function array2_merge($array1, $array2, $key = '')
{
if (empty($array1) || empty($array2)) return NULL;
$arr = array();
foreach ($array1 as $k => $v) {
isset($v[$key]) ? $arr[$v[$key]] = array_merge($v, $array2[$k]) : $arr[] = array_merge($v, $array2[$k]);
}
return $arr;
}
/*
* 对二维数组排序 两个数组必须有一个相同的键值
* $array1 需要排序数组
* $array2 按照该数组key排序
* */
function array2_sort_key($array1, $array2, $key = '')
{
if (empty($array1) || empty($array2)) return NULL;
$arr = array();
foreach ($array2 as $k => $v) {
if (isset($v[$key]) && $v[$key] == $array1[$v[$key]][$key]) {
$arr[$v[$key]] = $array1[$v[$key]];
} else {
$arr[] = $v;
}
}
return $arr;
}
?>
群晖active backup激活代码编程频道|福州电脑网
群晖active backup激活代码
系统教程580
更新时间:2026-04-03 20:32:02 2023年11月29日发(作者:)
群晖active backup激活代码
随着数据量的不断增加和重要数据的不断积累,数据备份和恢复变
得越来越重要。而群晖Active Backup作为一款全面的数据保护解
决方案,可以帮助用户轻松备份和恢复不同类型的数据,包括文件、
虚拟机和数据库等。
为了使用Active Backup,用户需要先激活该功能。下面我们将介
绍一下激活Active Backup的具体步骤。
在群晖NAS管理界面上找到“Package Center”(套件中心)并打
开。在“可用”选项卡中,找到Active Backup并点击“安装”。
安装完成后,在“已安装”选项卡中找到Active Backup并点击
“启动”。
接下来,我们需要激活Active Backup的许可证。在Active
Backup的管理界面上,点击左侧菜单栏中的“激活许可证”。在弹
出的窗口中,我们需要输入激活码。激活码通常是由供应商提供的
一串字符,用于激活软件。请注意,激活码是保密的,不应该公开
或与他人分享。
在输入激活码后,点击“激活”按钮。系统会自动验证激活码的有
效性。如果激活码正确且有效,系统将显示“激活成功”的提示信
息。此时,用户就可以开始使用Active Backup的功能了。
激活Active Backup后,用户可以根据自己的需求配置不同类型的
备份任务。例如,可以选择备份文件夹、虚拟机或数据库等。用户
还可以设置备份计划,包括备份频率、保留策略和目标位置等。此
外,Active Backup还提供了增量备份和差异备份等高级功能,以
提高备份效率和节省存储空间。
除了备份功能,Active Backup还具备灾难恢复的能力。在数据丢
失或系统崩溃的情况下,用户可以通过Active Backup快速恢复数
据。用户只需选择需要恢复的数据,然后点击“恢复”按钮即可。
Active Backup将根据备份任务的设置,将数据恢复到原始位置或
指定的目标位置。
总的来说,激活Active Backup是使用该功能的第一步。通过激活
Active Backup,用户可以享受到群晖提供的全面数据保护解决方案,
并轻松进行数据备份和恢复操作。在使用过程中,用户还可以根据
自己的需求进行灵活配置,以满足不同的备份需求。
本文发布于:2023-11-29,感谢您对本站的认可!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:此选项卡已经恢复怎么解决
发布评论