我今晚没有设置环境来测试这个问题,但这个问题整晚都在困扰我,所以很抱歉。
我在我的代码点火器框架中使用phpactiverecord以及我尝试的CRUD库。 我对"call_user_func_array"功能没有太多经验 - 对我来说很丢人。 所以我想我的问题是...我的预期结果是否与此函数的实际结果相同
public static function create_record($obj, $attr){
$ORM = new $obj;
return (bool) call_user_func_array(array($ORM, "create"), $attr);
//self::create_record('Object', array);
//Expected: (bool)Object::create($attr);
}
如果:
CRUD::create_record('User', $this->input->post());
就像:
User::create($this->input->post());
然后只需执行以下操作,这要简单得多:
$obj = 'User';
$obj::create($this->input->post());
如果您使用的是命名空间,它也可以工作。
$obj = 'app'models'User';
$obj::create($this->input->post());