标题:话说PHP的call_user_func_array 出处:Felix021 时间:Fri, 27 May 2011 10:33:44 +0000 作者:felix021 地址:https://www.felix021.com/blog/read.php?2015 内容: 前些天写的程序在上线的时候出现BUG了,错误提示就是call_user_func_array无法调用指定的函数。 代码大概是这样的 class foo { public static function bar($arg1, $arg2) { //do sth. } } call_user_func_array("foo:bar", array(1, 2)); 追了一下发现是PHP版本的问题,开发环境使用的是php 5.2.17,而线上环境是旧版本的5.1.6。5.1版的php的call_user_func / call_user_func_array函数没法调用类的静态函数,所以出现了这个问题。 没有很好的解决方法,大致就是 1. 升级PHP(最后我们是这么做的) 2. 使用字符串拼出一段php代码,然后用eval来执行。很挫,但是也能用。 Generated by Bo-blog 2.1.0