agid])) { foreach ($g_flag_thread[$flagid] as &$val) { flag_thread_filter($val); } flag_thread_set($flagid, $g_flag_thread[$flagid]); } } return $g_flag_thread[$flagid]; } // 设置缓存 $key = flagid / $val = flagid下tid数组 function flag_thread_set($key, $val) { global $g_flag_thread; FALSE === $g_flag_thread and $g_flag_thread = website_get('flag_thread'); empty($g_flag_thread) and $g_flag_thread = array(); $g_flag_thread[$key] = $val; return website_set('flag_thread', $g_flag_thread); } // 删除flag下tid缓存 function flag_thread_delete_cache($flagid) { global $g_flag_thread; FALSE === $g_flag_thread and $g_flag_thread = website_get('flag_thread'); empty($g_flag_thread) and $g_flag_thread = array(); if (isset($g_flag_thread[$flagid])) { unset($g_flag_thread[$flagid]); website_set('flag_thread', $g_flag_thread); } return TRUE; } // Delete by tid / 通过tid删除flag下的主题和对应flagid缓存 function flag_thread_delete_by_tid($tid) { global $g_flag_thread; FALSE === $g_flag_thread and $g_flag_thread = website_get('flag_thread'); if (empty($g_flag_thread)) { $g_flag_thread = array(); } else { $thread = well_thread_read_cache($tid); $arrlist = flag_thread_find($tid, 1, $thread['flags']); $flagarr = $ids = array(); foreach ($arrlist as $val) { $flagarr[] = $val['flagid']; $ids[] = $val['id']; if (isset($g_flag_thread[$val['flagid']])) unset($g_flag_thread[$val['flagid']]); } website_set('flag_thread', $g_flag_thread); // 主键更新 flag_update($flagarr, array('count-' => 1)); // 主键删除 flag_thread_delete($ids); } return TRUE; } // 主键删除 通过$flagid删除flag下的主题和对应flagid缓存 function flag_thread_delete_by_flagid($flagid) { global $g_flag_thread; FALSE === $g_flag_thread and $g_flag_thread = website_get('flag_thread'); $read = flag_read_cache($flagid); if (empty($read)) return TRUE; $arrlist = flag_thread_find_by_flagid($flagid, 1, $read['count']); if (empty($arrlist)) return TRUE; $flagarr = $ids = array(); $n = 0; foreach ($arrlist as $val) { ++$n; $flagarr[] = $val['flagid']; $ids[] = $val['id']; if (isset($g_flag_thread[$flagid])) unset($g_flag_thread[$flagid]); } website_set('flag_thread', $g_flag_thread); // 主键更新 flag_update($flagarr, array('count-' => $n)); // 主键删除 $r = flag_thread_delete($ids); return $r; } ?>软件

RecoverMyFiles数据恢复软件使用攻略

本文还有配套的精品资源,点击获取 简介:数据恢复软件可以帮助用户从误删除或格式化的存储设备中恢复丢失的文件。文章将深入探讨数据恢复的原理和如何使用RecoverMyFiles等工具进行数据恢复

2025-1-24960

西门子学习之路-01-WinCC软件与STEP7 软件安装

SIMATIC 学习-01-WinCC软件与STEP7 软件安装 提示: 安装WinCC工控软件与STEP7 软件不建议安装到本机电脑上,防止在后期操作不当导致电脑故障。使用虚拟也有助于后期虚拟机

2025-1-24730

Ubuntu系统下载(清华大学开源软件镜像站)

由于服务器在国外,所以去官网下载ubuntu系统会非常慢。建议在国内的一些镜像站下载。 清华大学开源网站镜像站网址:https:mirrors.tuna.tsinghua.edu 进入之后在

2025-1-22710

C盘清理软件哪个好用,清理C盘工具推荐

C盘快满了是再正常不过的事,经常看到大家时常都有清理C盘的需求,也很努力在网上搜寻各种攻略,但经过了艰难的学习,自己手动清理带来的结果却令人失望。哪怕已

2025-1-20560

C#软件注册

c#软件注册 整体思路生成机器码服务端生成密钥客户端根据密钥注册软件在打开软件的时候,判断是否已经注册过期 整体思路 服务端: 根据客户端的唯一机器码,和一些扩展字段(有

2025-1-19260

Windows 7常用48款软件兼容性测试

众所周知,Windows 7是微软继Windows XP、Vista之后推出的新一代操作系统,随着其2009年10月22日正式上市日期的日益临近,全世界电脑用户的目光再一次被

2025-1-19900

推荐一款数据恢复软件(迅龙数据恢复)

推荐一款数据恢复软件(迅龙数据恢复) 工作学习中,可能由于各种各样的原因导致U盘不退出就拔掉,等再次插上电脑的时候提示,需要格式

2025-1-19410

易我数据恢复软件资源下载

易我数据恢复软件资源下载 易我数据恢复注册码.rar项目地址:https:gitcodeopen-source-toolkit6f962简介 本仓库提供易我数据恢复软件的资源文件下载,该软件包含注册码&

2025-1-19530

免费的电脑数据恢复软件

该版本R-Studio已授权,可以使用全部功能。 R-Studio是一个功能强大的反删除和数据恢复软件。它采用独特的数据恢复新技术,为恢复FAT121632、NTFS、NTFS5&#

2025-1-19550

真正免费的U盘数据恢复硬盘数据恢复软件

真正免费的U盘数据恢复硬盘数据恢复软件 【下载地址】真正免费的U盘数据恢复硬盘数据恢复软件 真正免费的U盘数据恢复硬盘数据恢复软件在数字时代,数据丢失成为我们共同的担忧 项目地址: https:gitcode

2025-1-19660