Archive for 八月, 2010

安装php-memcached,libmemcached提示“configure: error: “could not find memcached binary””的解决

先发一下牢骚,这些名字怎么这么接近,甚至是一样的。服务端:memcached,PHP客户端扩展:memcache,memcached,顺便想个别的名字不行吗,我想搜索关于php-memcached的资料,90%以上会搜索到服务端的memcached。

以下是正题。

如果memcached和php-memcached是在同一台机子里运行,一般不会出现这个问题,真出现了,只要加上”with-memcached=你的memcached路径”即可。

我这里碰到的情况是,memcached安装在另外一台机子,上面只有mysql和memcached。需要安装php-memcached的机器是没有memcached的,在安装libmemcached时,就会出现标题的报错,这时,只要从安装有memcached的机器那复制memcached放到本地的/usr/bin下即可顺利通过。

, , ,

No Comments

[转载]50点提高PHP编程效率

这些总结很 实用,希望给来我博客的人一点帮助。来源:Web思想者

1、用单引号代替双引号来包含字符串,这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量,单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的“函数”(译注:PHP手册中说echo是语言结构,不是真正的函数,故把函数加上了双引号)。

2、如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍。

3、$row[’id’] 的速度是$row[id]的7倍。

4、echo 比 print 快,并且使用echo的多重参数(译注:指用逗号而不是句点)代替字符串连接,比如echo $str1,$str2。

5、在执行for循环之前确定最大循环数,不要每循环一次都计算最大值,最好运用foreach代替。

6、注销那些不用的变量尤其是大数组,以便释放内存。

7、尽量避免使用__get,__set,__autoload。

8、require_once()代价昂贵。
Read the rest of this entry »

No Comments

[转载]从PHP5.2.x迁移到PHP5.3.x

php官方已经不再积极更新php5.2.x了,看到一篇文章讲从php5.2.x升级到php5.3.x的,先做个记录。目前的项目还是基于php5.2.x,时机成熟再迁移吧,毕竟这是劳民伤财的事。
来源:Web思想者论坛,以下为原文:

目录
一、PHP 5.3.x中发生了什么变化
二、向后不兼容的变化
三、新功能
四、Windows支持的变化
五、SAPI modules中的变化
六、PHP 5.3.x中不建议使用的功能
七、PHP 5.3.x中去除不推荐的功能
八、新参数
九、新函数
十、新的stream wrappers
十一、新的类常量
十二、新方法
十三、新扩展
十四、移除的扩展
十五、扩展中的其他变化
十六、新的类
十七、新的全局常量
十八、INI文件handling的变化
十九、其他变化
Read the rest of this entry »

No Comments