组保留的标签 余下为需要删除的标签
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;
}
?>
无法去掉U盘文件夹隐藏解决方法编程频道|福州电脑网
无法去掉U盘文件夹隐藏解决方法
系统教程420
更新时间:2026-04-03 20:24:58
2023年11月25日发(作者:)我想这个问题大家都不陌生,当然也有很多应对方案,比如从路径进入文件夹后把文件都复制出 来,不过这很麻烦,有种比较方便的方法。其实老早就试过这个方法,只不过我很少遇到这个问题,就给忘记了。最近咱们同学常在学校电脑上拷文件,中毒频繁了 起来,我就又实践了一次。
文件夹被隐藏的原因是属性被改为隐藏文件或系统文 件,如果是隐藏文件的话就直接在属性里去掉隐藏文件的选项就行了。
但中毒的话,这种方法多半不行,这是因为文件夹的属性被改为系统文件。系统文件兼有隐 藏文件和只读文件的属性,杀毒以后虽然病毒不在了,可病毒的影响还是没有消失。还是得手动改一下文件夹的属性。不过在windows系统中,文件的属性页 里无法修改系统文件的属性。(某种意义上来说,这病毒也是钻了微软的windows的空子...-_-)要去掉系统文件属性,其实也很简单。
准备工作是要让系统显示文件的扩展名,也就是后缀名,如果本来就显示,这一步就不用做了,如 果没有显示,就在任意一个文件中,选择“工具->文件夹选项”,选“查看”标签页,找到“隐藏已知文件的扩展名”一项,把前面的勾去掉,点确定,扩 展名就显示出来了。
准备工作结束后,进入正题,首先,新建一个文本文档。
然后,打开此文档,在里面输入“attrib -s -h -r *.* /s /d”(不含引号,注意空格不可少!),保存退出。
再修改文件名为*.bat,也就是文件名任意,后缀名是bat。
改后 发现图标变了,如果没变说明扩展名没改成,这时要检查一下系统是否显示文件扩展名,就是上面的准备工作。
最后把这个文件复制到有问题的U盘根目录下,双击运行。
不要着急,这个窗口会持续一段时间,运行结束它会自动关闭的。看看U盘中的文件和文件 夹,是不是都恢复原状了呢?^_^
为了满足少部分人的好奇心,说明一下为什么要这样做。上面说了文件夹被加了系统文件属性,所以 我们的目的就是去掉这个属性,虽然windows下视窗操作不行,但DOS命令行却可以。
attrib是修改文件属性的命令,在DOS命令行下输入help attrib就可以看到这个命令的使用方法。
来看arrtib命令的参数,“-s -h -r *.* /s /d”。-号,就是减号,意思是去掉,s表示系统文件,h表示隐藏文件,r表示只读文件。-s -h -r表示去除系统、隐藏和只读属性,接下来的*.*的意思是对目录下所有的文件进行操作,这里也可以写文件或文件夹名字。/s /d就是表示也处理文件夹和文件夹里的文件。整句话的意
思就是把当前目录下的所有文件和文件夹的系统、隐藏和只读属性去掉,怎么样?简单吧~~
减号改成加号的话,就表示加上属性,有兴趣可以试一下。
另:
点击“我的电 脑”在“地址栏”选择U盘得“盘符”,就可以打开u盘,点击“工具”,“文件夹选项”,取消“不显示系统隐藏文件”得“钩钩”,弹出确认选项,点击" 是",然后选中“显示隐藏文件”点击确定,u盘内出现了很多文件,有你的文件夹和一些exe文件,删除exe文件,然后点击“开始”,“运行”在"运行 栏"输入cmd,然后输入“X:”回车,X为你的u盘盘符,接着输入"attrib -s -h /s /d", 回车,耐心等待文件得隐藏属性去掉后就关掉”命令提示符窗口”,注意不要输入“引号”和“空格
本文发布于:2023-11-25,感谢您对本站的认可!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:怎么改扩展名
发布评论