09 2013 档案

摘要:python的enumerate函数用于循环索引和元素 例如 foo = 'abc' for i , ch in enumerate(foo): print ch, '(%d)' % i输出结果: a (0)b (1)c (2) 阅读全文
posted @ 2013-09-27 11:17 河边的老牛 阅读(474) 评论(0) 推荐(0) 编辑
摘要:最近和别人做接口用到SOCKET TCP/IP方式其中需要对账号和密码进行3DES加密对方提供了一个加密比对的软件和JAVA的实现代码并且给了我们一个长度为32位的密钥这边需要用PHP来实现!PHP 3des加密的密钥位24位!关于这个密钥长度的问题纠结了很久最后被哥蒙对了!32位长度如何转化为24位呢我是这样做的将32位的前16位取出来放到后面 这样32+16 = 48位然后用$key = pack('H48',$key)正好是24位!也就是16进制转化为字节流这也是有依据的,这种叫着对称加密当然加密的方式为cbc模式cbc模式加密是需要一个向量来增加安全性的看JAVA代码如 阅读全文
posted @ 2013-09-09 11:34 河边的老牛 阅读(2410) 评论(0) 推荐(0) 编辑
摘要:不同的CPU有不同的字节序类型 这些字节序是指整数在内存中保存的顺序 这个叫做主机序最常见的有两种1. Little endian:将低序字节存储在起始地址2. Big endian:将高序字节存储在起始地址LE little-endian最符合人的思维的字节序地址低位存储值的低位地址高位存储值的高位怎么讲是最符合人的思维的字节序,是因为从人的第一观感来说低位值小,就应该放在内存地址小的地方,也即内存地址低位反之,高位值就应该放在内存地址大的地方,也即内存地址高位BE big-endian最直观的字节序地址低位存储值的高位地址高位存储值的低位为什么说直观,不要考虑对应关系只需要把内存地址从左到 阅读全文
posted @ 2013-09-03 09:38 河边的老牛 阅读(2183) 评论(0) 推荐(0) 编辑
摘要: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(); } 9行代码的 function genTree9($items) { $tree = array(); //格式化好的树 foreac 阅读全文
posted @ 2013-09-02 13:36 河边的老牛 阅读(477) 评论(0) 推荐(0) 编辑