PHP中的二进制位运算和权限存储

在很多系统的权限/选项设置中 很多都用到了位运算的方法来存储多种标志位。这样可以节省字段。一个字段只需要一个数字 就可以标识很多种设置和信息。

举例 dicuz的帖子表的status字段,官方预留了16个标志位(0x0000 - 0xFFFF) 即216

目前规划使用了只有8个标志位,如[......]

继续阅读

PHP DES加密中与C#/ActionScript/Java互操作的算法

搜索DES加密 不一致 好像能搜索到很多。
差异一般产生在加密方式,而且是你没指定的加密方式,或者zeroIV初始向量,填充模式等等,你不指定,各个程序和库处理的方式就会不一样,这就是产生差异的原因。
以PHP的mcrypt_cbc函数为例

string mcrypt_cbc ( string[......]

继续阅读

Eclipse在Windows下用UTF-8为默认编码引起乱码问题

由于经常要在Linux和Win下面进行双系统切换,我在Ubuntu下面的默认编码斗数使用UTF-8的,这样在Eclipse在Windows中打开这些项目的时候,虽然可以手动设定WorkSpace的编码,手动设定项目工程和Content Types的所有文件编码都为UTF-8,使得项目内已经存在的文件[......]

继续阅读

Simple_Html_Dom,PHPQuery之外的新选择

PHPQuery是一个PHP的Jquery实现,对于熟悉jQuery的人来说,可以非常方便的机进行网页解析。可是对畸形怪状的网页和编码支持不是太好,虽然有各种hack方式,但是始终很麻烦,而且从2009年以后就不怎么更新了。于是找替代方案,找到了这个Simple_Html_Dom,文档也很详细,立刻[......]

继续阅读

在CentOS 5上使用PECL安装php memcached以及简单管理

感觉在CentOS上编译的工作量和Gentoo有的一ping啊。。。。。。。。。。。类似我了。

CentOS自带的包是

php-pecl-memcache

由于启用了epel源,把依赖弄得乱七八糟,没办法,只好考虑
使用PECL安装

pecl install memcache
n[......]

继续阅读

处理 PHP Shell_exec 中的空格的函数escapeshellarg

php的exec的参数里面如果有空格会导致执行失败,用escapeshellarg()即可(实际上是加了引号)

下面这里例子是使用php遍历pdf并且转化为txt的例子
[php]<?php
/*
* 递归获取指定路径下的所有文件或匹配指定正则的文件(不包括“.”和“..”),结果[......]

继续阅读