
1 lamengao 2011-01-05 17:11:48 +08:00 call_user_func |
3 iloveyou OP 再追加一个问题: 刚你说的函数是调用类动作的,如果我想给一个未知名称的类中的一个公共静态变量赋值怎么办? 示例: $className = '未知类名称'; $className :: parameter = 'test'; //这行报错。 |
4 fmfsaisai 2011-01-05 17:52:50 +08:00 $className :: method(); 你确定这样会报错?PHP什么版本的? 以下代码可以运行PHP 5.3.3 <?php class aa{ public static $var; public static function a(){ echo self::$var; } } $cc = 'aa'; $cc::$var = 123; $cc::a(); |
5 iloveyou OP |
8 iloveyou OP 好了,要下班了。改天聊,再次说声谢谢。 |
9 lamengao 2011-01-05 18:32:36 +08:00 @iloveyou 在PHP 5.3 中 $classname::$static_var 已经可以正常工作了。(注意静态变量前面的'$') |
10 ayanamist 2011-01-05 18:54:29 +08:00 你可以去看看RefectionClass这个类的使用 |
11 summic 2011-01-05 19:05:19 +08:00 类反射全部搞定lz的需求 |
12 CupTools 2011-01-05 23:22:18 +08:00 顺便说句...用 PHP 5.2的同学写Daemon会抓狂的...内存直线上升。5.3才是王道 http://www.php.net/manual/en/features.gc.performance-considerations.php 我表示下面的图很有爱 |
13 ayanamist 2011-01-06 00:24:30 +08:00 @CupTools 你大概没有弄明白官方这个图是什么意思吧。写Daemon要自己做unset的,官方那个图代表5.3的垃圾收集更智能而已,在5.2中可以通过手工代码实现的 |
14 napoleonu 2011-01-06 00:30:54 +08:00 写网站,为什么不用C |
15 liruqi 2011-01-06 01:37:15 +08:00 腾讯才用C 企鹅全家都用C |
16 TheOnly92 2011-01-06 07:14:23 +08:00 写网站而已,为什么要用到 C? |
18 CupTools 2011-01-06 11:58:24 +08:00 @ayanamist 我确定一定以及肯定,我将全部变量重设了。我亲身做试验,在5.2下面,每完成一个while,5.2都会增加200kb内存;然后5.3维持在3.4M,100000个while也没有太大的内存变动。在5.2有gc_collect_cycles()? |
21 TheOnly92 2011-01-06 12:24:02 +08:00 PHP 5.2 才刚刚普遍起来而已,况且我个人的代码有许多功能被 5.3 砍掉了呢,要阅读,修改,重写需要一定时间,所以暂时放着。而且 5.3 才刚出,难保没有什么问题,所以还是静观其变吧。 |
26 ayanamist 2011-01-06 21:02:11 +08:00 |
28 ayanamist 2011-01-07 14:41:27 +08:00 @CupTools 看来你没看到我发的链接的点子上。那个评论说了,确实有的时候unset是没有用的,要自己设NULL改写内存。不过PHP的内存控制一直很不好。我现在已经转向Python开发了 |
32 TheOnly92 2011-01-08 11:19:21 +08:00 5.3 集合了 APC 吧。 |