‘php’ 分类的存档

这东西据说从测试数据上是最快的PHP模版引擎
纯C编写,编译为PHP扩展模块调用解释,从这看来速度快不是盖的
再来一张官网上的测试数据图
这东西布署方便,模版语法比较友好,我以后都打算用这东西替代Smarty了
有兴趣可以到官网看看:http://alexeyrybak.com/blitz/blitz_en.html

2010年2月23日17:09 | 没有评论
分类: php

今天想把一些插件删之,发现提示信息形如

执行请求动作,连接信息必需提供
主机名
用户名
密码
连接类型

这个问题,我以前用虚拟主机时,遇到个,输入FTP帐号信息就可以解决了
问题是现在我用VPS,环境都是自己架的,没有什么FTP服务器,哪来这东西?
于是我就检查一下文件权限,发现完全没有问题
后来通过

2010年2月14日23:17 | 没有评论
分类: php

先是看到gracecode的这篇文章:一些初忽视的PHP函数(整理)
和作者说法一样,泪奔了,里面有好一些函数都自己造个轮子,却不知道PHP里已经带有了

2010年2月10日21:38 | 没有评论
分类: php

我们可能有时需要popen一个程序,通过管理传送数据给此程序
这时我们用fwrite来写入,事实上此时写入最大长度为4096,从strace跟踪就可以得知
所以我们一次fwrite写不完,就需要一次次地去写,上面的fwrite_stream是PHP Manual提供的,当遇到此种情况时可以用
其实就是惯C用法了,不过我平时总是因为PHP是脚本语言而忽略一些细节,平时也没有遇到要写这么大的数据量,这次遇到问题总结一下

2010年2月5日15:28 | 没有评论
分类: php
标签: , , ,

听到HipHop实在太熟悉了,不过这次想不到是一个开源项目的名称
之前听说Facebook将重写 PHP运行时机制,现在才知道这项目开展了有一段时间了(Facebook性能大提升的秘密:HipHop)
上网搜了一下,发现链接暂时都不能访问,因为GFW封了facebook的域名,只能翻墙或者再等等看了

2010年2月3日12:46 | 没有评论
分类: php
标签: , ,

见http://developers.slashdot.org/story/10/01/31/0252201/Facebook-Rewrites-PHP-Runtime-For-Speed

虽然不确定,但这个举动非常值得期待,让PHP也像Python那样可以编译

10倍的性能提升将非常可观,为关键的应用程序带来高性能的支持

耐心等待这个东东的出世

2010年2月1日13:33 | 2 条评论
分类: php

如果一个函数叫 function test( & $retCode ) { $retCode = 1; } 那么test($ret)后,$ret的值就为1,这个和C/C++里的指针、引用参数是一样的 在PHP扩展模块里,我们也可以实现这种写法 PHP_FUNCTION(php_test) { zval *out = NULL; zval *Rg = NULL; if( zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC,”z”, &out) == FAILURE ) { RETURN_NULL(); } zval_dtor(out); ALLOC_INIT_ZVAL(Rg); array_init(Rg); add_assoc_string(Rg, “name”, “slackcode”, sizeof(“slackcode”)-1, 1); add_assoc_long(Rg, “age”, -1); add_assoc_long(Rg, “luckyNum”, 11); ZVAL_ZVAL(out, Rg, 1, 1); RETURN_LONG(0); } 这样子,我们调用 $person [...]

2009年11月25日09:03 | 没有评论
分类: php

从使用经验得知,in_array是线性查找,当数据量多一些时,就会巨慢 如果要提速,请使用hash数组进行保存,以协助查找 # 这样太慢了 in_array(“item”, $tmpArr); # 构造一个$tmpArr的hash数组$hashTmp # 查找时就可以 if ( isset( $hashTmp["item"] ) )

2009年10月12日12:34 | 没有评论
分类: php
标签: , , ,