msgbartop
PHP语言, PHP扩展, Zend引擎相关的研究,技术,新闻分享 – 左手代码 右手诗
msgbarbottom

13 Sep 11 关于做PHP扩展开发的一些资源

最近有个感觉, 越来越多的人开始从事PHP扩展开发的工作(越来越多的人来问问题了, 呵呵)

在这里先说声抱歉, 有的时候, 有的同学的邮件进了垃圾邮件没有办法及时回复.

为了方便大家, 我在这里罗列一些可能用到的资源.

09 Aug 11 分享个开心的事情

Hi, 从我做PHP开始到现在, 已经差不多有6年的时间了.

在6月份的时候, 我加入了PECL官方扩展开发小组.

也就在前天, 我终于加入了PHP开发小组. 这个也算是一个阶段性的被肯定吧..

做开源事业, 真的是很单纯, 难以抑制的喜悦, 想和大家分享.

回顾这6年, 兴趣是我最大的动力, thanks all.

04 Aug 11 Plua进入Pecl

一个月以前, 我开发了一个php扩展( PLua – Lua for PHP ), 支持在PHP中调用Lua脚本

后续, 发现在pecl中有一个类似的扩展, lua

在和lua的作者johannes, Andreas讨论过以后, 我们一致认为, 应该只保留一个lua扩展.

考虑到Plua的设计更加符合PHP思维习惯, 功能上也比lua要更加丰富, 大家就一致决定把plua作为新的lua标准扩展, 当然plua也会借鉴lua现在的一些优点.

目前plua已经整合到pecl lua的svn中, 等和johannes确认以后, 就会发布release: Lua

16 Jul 11 浏览器多tab打开同一URL串行化的问题

最近同事”神经病”同学的项目中, 发现一个问题.

用firefox打开多个tab, 每个tab都去请求同一个URL(尽量同时), 会发现, 这些请求, 会被浏览器串行化.

也就是说, 浏览器会在第一个页面请求结束以后, 再发起第二个请求,

比如对于如下脚本:

<?php
error_log("start . " . getmypid(). "\n");
sleep(5);
error_log("end . " . getmypid() . "\n");

14 Jul 11 Zend引擎的优化

在PHP 5.4的更新list上, 有一句: 提升了Zend引擎的性能, 减少了内存占用.

那么, 到底是怎么提升的呢?

13 Jul 11 PHP RFC: 让PHP的foreach支持list

上个月, 终于算加入了PHP developer team, 一直以来最大的障碍就是语言, 现在想起来, 当年真应该更加认真努力的去学习英语.

得到的第一个任务是: 解决一个feature request, 请求在allow foreach($array as list($a,$b)

大意是说, 希望PHP能支持如下语法:

<?php
foreach (array(array(24,2333), array(31,4666)) as $k => list($a, $b)) {
    printf("key:%s, a=>%s, b=>%s\n", $k, $a, $b);
}
/** output:
key:0, a=>24, b=>2333
key:1, a=>31, b=>4666
*/

实现这个功能, 入手点就是去改写PHP的语法分析逻辑, 具体的实现我会再后面附上对PHP5.4的patch.

02 Jul 11 Zend Parameters Parser新增类型描述符介绍

从PHP5.3开始, zend_parse_paramters_*函数新增了如下几个新的类型描述符:

f  - function or array containing php method call info (returned as
      zend_fcall_info and zend_fcall_info_cache)
H  - array or HASH_OF(object) (returned as HashTable*)
L  - long, limits out-of-range numbers to LONG_MAX/LONG_MIN (long)
Z  - the actual zval (zval**)
*  - variable arguments list (0 or more)
+  - variable arguments list (1 or more)

这也使得我们做扩展开发的时候, 能更加轻松的处理输入参数, 得到想要的值.

02 Jul 11 PHP5.4的新特性

PHP5.3刚出来不久, PHP6孕育中的同时, PHP5.4又放出了第一个alpha版本.

5.4主要包括以下特性:

Added: Traits language construct
Added: Array dereferencing support
Added: DTrace support
Improved: Improved Zend Engine memory usage and performance
Moved: ext/sqlite moved to pecl (sqlite3 support is still built-in)

Removed: break/continue $var syntax
Removed: register_globals, allow_call_time_pass_reference, and register_long_arrays ini options
Removed: session_is_regisitered(), session_registered(), and session_unregister()

我们重点关注下新增的这三点…

28 Jun 11 在Windows下编译Yaf

昨天大草原同学完成了在VS9下编译PHP-5.2.15和Yaf, 转发给我相关步骤描述.

其实本质上在win32和Linux下编译没什么区别, 都是只要正确设置CFLAGS和LDFLAGS就可以了, 但微软老喜欢搞成配置, 各种各样的配置项, 搞得人郁闷的不行.

特转载于此, 供大家参考.

26 Jun 11 Yaf已提交到PECL

是个值得Yaf纪念的日子..

http://pecl.php.net/package/yaf

Pages:  1 2 3 ...6 7 8 9 10 ...25 26 27