PHP无限级递归及非无限级递归方法
2017-02-16 14:20:03
/* * ************** 无限级分类递归方法 ********************* */ function findChild(&$arr, $id) { $childs = array(); foreach ($arr as $k => $v) { if ($v['parentid'] == $id) { $childs[] = $v; } } return $childs; } function buildTree($root_id) { global $rows; $childs = findChild($rows, $root_id); if (empty($c...
获取客户端的ip
2017-02-16 14:18:58
/** * 获取客户端的ip * * @param boolean $format * - 返回格式 0 : 原格式 1:数字 * @return string/int */ function getIp($format = 0) { if (getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')) { $ip = getenv('HTTP_CLIENT_IP'); } elseif (getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('...
php 无限级树型结构
2017-02-16 14:12:06
<?php function genTree5($items) { foreach ($items as $item) $items[$item['pid']]['son'][$item['id']] = &$items[$item['id']]; return isset($items[0]['son']) ? $items[0]['son'] : array(); } /** ...
Linux系统防火墙防止DOS和DDOS攻击
2017-02-15 17:36:43
用Linux系统防火墙功能抵御网络攻击 虚拟主机服务商在运营过程中可能会受到黑客攻击,常见的攻击方式有SYN,DDOS等。通过更换IP,查找被攻击的站点可能避开攻击,但是中断服务的时间比较长。比较彻底的解决方法是添置硬件防火墙。不过,硬件防火墙价格比较昂贵。可以考虑利用Linux系统本身提供的防火墙功能来防御。 1. 抵御SYN SYN攻击是利用TCP/IP协议3次握手的原理,发送大量的建立连接的网络包,但不实际建立连接,最终导致被攻击服务器的网络队列被占满,无法被正常用户访问。 Linux内核提供了若干SYN相关的配置,用命令: sysctl -a | grep syn 看到: net.ipv4.tcp_max_syn_backlog = 1024 net.ipv4.tcp_syncookies = 0 net.ipv4.tcp_synack_retries = 5 ...
Linux系统防火墙防止DOS和CC攻击的方法
2017-02-15 17:34:30
用Linux系统防火墙功能抵御网络攻击 虚拟主机服务商在运营过程中可能会受到黑客攻击,常见的攻击方式有SYN,DDOS等。 通过更换IP,查找被攻击的站点可能避开攻击,但是中断服务的时间比较长。比较彻底 的解决方法是添置硬件防火墙。不过,硬件防火墙价格比较昂贵. 用Linux系统防火墙功能抵御网络攻击 虚拟主机服务商在运营过程中可能会受到黑客攻击,常见的攻击方式有SYN,DDOS等。 通过更换IP,查找被攻击的站点可能避开攻击,但是中断服务的时间比较长。比较彻底 的解决方法是添置硬件防火墙。不过,硬件防火墙价格比较昂贵。可以考虑利用Linux 系统本身提供的防火墙功能来防御。 1. 抵御SYN SYN攻击是利用TCP/IP协议3次握手的原理,发送大量的建立连接的网络包,但不实际 建立连接,最终导致被攻击服务器的网络队列被占满,无法被正常用户访问。 Linux内...
PHP的数组转换成JSON的问题
2017-02-14 15:36:56
$a = array("abc","ddd"); $b = array(1=>"abc",3=>'ddd'); 以上两个数组在PHP里表现均是数组,因为PHP是个弱类型的语言。所以没有啥差别。 但是在实际与客户端对接的过程中,需要转换成JSOn格式,对于客户端来说,是个数组还是一个OBJECT是有差别的. 分别打印: print_r($a);//["abc","ddd"] print_r($b);//{"1":"abc","3":"ddd"} 所以实际开发的需要特别注意。特别是在一些业务场景 需要组合数组,删除数据中某个数据,这时会把数组的自然...
鼠标跟随文字效果
2017-02-13 12:06:13
<STYLE>.spanstyle { COLOR: #0066ff; FONT-FAMILY: 隶书; FONT-SIZE: 14pt; FONT-WEIGHT: normal; POSITION: absolute; TOP: -50px; VISIBILITY: visible } </STYLE> <SCRIPT language=javascript> var message="我 爱 你 一 生 一 世 !"; var x,y; var step=12; var flag=0; ...
保留键值KEY 的随机算法
2017-02-10 11:16:52
保留键值KEY 的随机算法 法一: $ac=array('key_1'=>'aaa','key_2'=>'bb','key_3'=>'ccc','key_4'=>'aaa'); function test ($ac){ foreach ($ac as $k=>$v){ $rs['k']=$k; $rs['v']=$v; $list[]=$rs; } print_r($list); shuffle($list); foreach($li...
动态时间
2017-02-10 11:15:33
动态时间 <script> setInterval("jnkc.innerHTML=new Date().toLocaleString()+' 星期'+'日一二三四五六'.charAt(new Date().getDay());",1000); </script> <div id=jnkc name=jnkc></div> ...
对称加密
2017-02-10 11:13:59
/** * 对称加密 */ /** * 播放随机种子 */ function make_seed() { list($usec, $sec) = explode(' ', microtime()); return (float) $sec + ((float) $usec * 100000); } /** * 用密钥进行加密 */ function enkey($txt,$key) { $encrypt_key = md5($key); //将密钥进行MD5加密 $ctrl = 0; ...