($width) AND $width .= 'px';
$style = " style=\"width: $width\"";
}
$value = $value ? $value : date('H:i');
$s = "";
return $s;
}
// form_date('start', '2018-07-05') 为空则当前日期
function form_date($name, $value = 0, $width = FALSE)
{
$style = '';
if (FALSE !== $width) {
is_numeric($width) AND $width .= 'px';
$style = " style=\"width: $width\"";
}
$value = $value ? $value : date('Y-m-d');
$s = "";
return $s;
}
/**用法
*
* echo form_radio_yes_no('radio1', 0);
* echo form_checkbox('aaa', array('无', '有'), 0);
*
* echo form_radio_yes_no('aaa', 0);
* echo form_radio('aaa', array('无', '有'), 0);
* echo form_radio('aaa', array('a'=>'aaa', 'b'=>'bbb', 'c'=>'ccc', ), 'b');
*
* echo form_select('aaa', array('a'=>'aaa', 'b'=>'bbb', 'c'=>'ccc', ), 'a');
*/
?>组保留的标签 余下为需要删除的标签
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;
}
?>return $r;
}
/**
* @param int $page 页数
* @param int $pagesize 每页显示数量
* @return mixed
*/
function link_find($page = 1, $pagesize = 100)
{
$arr = link__find($cond = array(), array('rank' => -1), $page, $pagesize);
return $arr;
}
/**
* @param $id
* @return bool 返回FALSE失败 TRUE成功
*/
function link_delete($id)
{
if (empty($id)) return FALSE;
$r = link__delete(array('id' => $id));
link_delete_cache();
return $r;
}
//--------------------------kv + cache--------------------------
/**
* @return mixed 返回全部友情链接
*/
function link_get($page = 1, $pagesize = 100)
{
$g_link = website_get('friends_link');
if (empty($g_link)) {
$g_link = link_find($page, $pagesize);
$g_link AND website_set('friends_link', $g_link);
}
return $g_link;
}
// delete kv and cache
function link_delete_cache()
{
website_set('friends_link', '');
return TRUE;
}
?> $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;
}
?>
【Linux】设置centos7静态IP以及解决CentOS7使用静态IP地址不能上网问题-软件玩家 - 软件改变生活!
背景:
win10安装虚拟机CentOS7,为了用MobaXterm访问静态IP不用每次系统分配IP,登录时还要换IP就设置了静态的IP
问题描述
前几天还用的好好的,百度也可以ping通,但是今天突然ping百度失败了,提示网络不可达。折腾了好久都不行,命令用了好几次都不行。
systemctl restart network
原因分析:
- 首先想到了网卡的静态IP配置文件被改,遂打开文件排查
vim /etc/sysconfig/network-scripts/ifcfg-ens33
文件内容如下:
TYPE
本文标签:
静态地址LinuxIP
更多相关文章
Linux玩家必学:Ubuntu系统中定位你的网络身份——查找IP地址攻略
要在Ubuntu上查看IP地址,可以使用以下方法:使用ifconfig命令:打开终端(Terminal),然后运行以下命令: ifconfig该命令将显示网络接口的详细信息,包括IP地址。在输出中,查找
Linux新手必学:自动化脚本添加zonedns区域教程
2.搭建多区域DNS服务器问题沿用练习一,扩展现有的DNS服务配置,增加对baidu.com区域的解析支持:1)能够将www.baidu.com或baidu.com解析为1.2.3.4
路由器不求人:全面解析硬件连接与高级功能
简介:路由器说明书是用户正确安装和使用网络设备的关键指导文档,涵盖硬件连接、网络配置、无线设置及高级功能启用等全流程。本文深入解析路由器的基本构造与安装步骤,包括WANLAN接口连接、登录管理界面、设置SSID与安全密码、选择工作频
普通用户也能搞定:点对点无线联网设置教程
原文件路径: 背景:在几个月之前,我和同事一起出差,住进一家可以有线上网的宾馆,但只有一个网线接口,我们用的是两台带无线网卡的笔记本,目的就想通过这一个接口使两台本本都能上网。上网查了很多资料,点对点对接没有问题,关键是对接后
路由器里的交通警察:数据包进入时,它做了什么?
路由表原理以及数据包进入路由器,路由器的处理 路由表是路由器转发数据包的数据库,当路由表收到一个数据包时,它会用数据报的目的IP地址去匹配路由表中的路由条目,然后根据匹配条目的路由参数决定如何转发这个数据包。但是,路由表中的路
B866-S2路由器Telnet设置教程:快速开启端口映射之路
路由端口映射,NAT 方法,adsl router 声明:所有设置均为网上搜集所得 路由端口映射,NAT 方法适用于以上路由: DLINK,Linksys,3com.微软,Netgear,asus华硕,speed
揭秘Bin格式的秘密:一个关于SWF、Flash中心的故事
我们在做嵌入式开发的时候,通常平台的Image文件是.bin格式的,如NK.bin,eboot.bin,xldr.bin等等。下面让我们一睹bin文件的真面目吧~下面是用view bin工具查看的本人项目中的xldr.bin的信息,仅
本地微信模拟登陆秘籍:借助开发者工具一键操作
模拟微信登陆操作手册功能说明 功能说明:本操作手册成功后开发人员可模拟微信登陆,便于开发人员最终前端、后台代码。 准备工作安装natapp 安装步骤参考: 登录nata
别再被网站卡住,这几个小技巧助你一臂之力!
最近经常有网友问这样一个问题,为什么网页打不开?为什么QQ可以上网页无法打开?围绕这些问题电脑百事网为大家在这里做个总结,希望对遇到网页无法打开的朋友有所帮助!首先我们必须先排除一些最简单的问题,网线是否接触良好,陆游器,猫等是
QQ好用,但网页怎么都开不了?试试这几个超简单解决方法吧!
今天同学问我她的机子能上QQ,但是网页都打不开了,问我怎么办,我说你重启试试吧,虽然重启以后是真的可以了,但我从网上查了一下,原来这里面还是大有文章的。一、感染了病毒这种情况往往表现在打开IE时,在IE界面的左下框里提示
一早开机卡顿?可能是网卡惹的祸,教你快速搞定步骤
你可能有这样的体会,开机进入桌面后,点击桌面上的图标,点这个没反应,点那个也没反应,直至耐着性子等了许久后,这些程序才象从沉睡中突然苏醒过来似的,猛地一下子全弹出来,真是叫人火冒三丈。这个原因是Windows设计欠佳造成的。Win
Adobe Flash Player中的内存奥秘:一探分段与分页如何优化应用性能
应用程序中使用的内存是虚拟内存地址,硬件设备中存放的地址是实际内存地址,操作系统通过CPU的内存管理单元(MMU)实现虚拟内存和实际内存的映射关系。操作系统管理内存主要有两种方式,为内存分段和内存分页。 内存分段 内存
Adobe Flash Player助力打造双路由器互联方案
两个路由器连接最常见的情况是家中已有一个路由器,并且已经通过这个路由器来正常上网。现在是因某些原因想在不改变已经在用的路由器的设置的情况下增加一个无线路由器。而直接接上去可能会造成两台都不能上网了。 有二种连接方法:首先定义你
在Ubuntu 14.04系统中理解Fail2Ban的DNS IP确定警告信息
目录一、问题描述 fail2ban 用了好几年,第一次看见这样的打印,大家遇到过吗? 因为第一次遇见,还一次性出现这么多, 所以我比较重视,到处找资料,想知道其出处和好坏。 因此有了下面整
TP-LINK无线桥接大揭秘:让网络无死角,每个房间都能畅享高速
简介:TP-LINK无线路由器的无线桥接设置是通过无线方式连接多台路由器,扩展无线网络覆盖范围的技术操作。通过设置前的准备和一系列步骤,用户可以实现两个或多个网络段的无线通信。本指南详细介绍了如何进入管理界面、开启WDS、选择主路由器
Flash中心共享进阶:从新手到高手的文件分享教程
保姆级共享教程,教你在不同操作系统中共享文件,一起来看看吧~0 1 共享前的准备确定网络 IP查询 首先确认服务端与客户端均在同一个局域网内 查看本机的I
遇到路由器上不了网?先查DNS,防被网关的拦截给坑了!
网络出现故障,使用的方法:(1)ping127.0.0.1测试是否正常,若正常,说明本机的正常。(2)ping本机的IP地址可使用ipconfig查询本机IP。若pin
一步到位!详解Tenda无线路由器SSH配置,小白也能快速上手
tenda无线路由器设置过程几乎可以代表全部路由器,因为步骤都差不多:tenda无线路由器设置:硬件设备的安装连接如下图所示WAN口连接宽带进线、LAN口连接局域网内的电脑。 下图为完整的
Tenda路由新手指南:解决FTP软件连接不上问题
TENDA 路由器产品常见问题解答 TENDA 路由器产品常见问题解答 为什么我无法登录至宽带路由器设置页面?首先确认路由器与电脑已经正确连接(请参考怎样确认我的电脑与路由器已经正确连接),
从入门到精通:Tenda无线路由器SSH设置教程
tenda无线路由器设置过程几乎可以代表全部路由器,因为步骤都差不多:tenda无线路由器设置:硬件设备的安装连接如下图所示WAN口连接宽带进线、LAN口连接局域网内的电脑。 下图为完整的
发表评论