使用exec()执行方法


Executing method with exec()

是否有效和/或可能使用exec();与同类的方法?而不是用$argv数组执行文件,我想把变量传递给一个方法,并在另一个方法中执行:

class Foo{
    private function bar($table, $column, $id){
        //SQL 
    }
    public function bar_exec($table, $column, $id){
        exec($this->bar($table, $column, $id)); //this is most likely wrong
    }
}

这背后的原因是我有一个方法,通过我的数据库,并需要相当多的参数,反过来需要大约一分钟才能完成,所以我需要在后台运行它每当一个表单被提交。处理这件事的最好方法是什么?

当您启动另一个PHP进程时,您也会获得一个干净的环境,该环境不知道当前对象,调用堆栈或任何东西。你必须完全分开对待。你的问题的答案是否定的。您不能仅仅为某个方法调用而启动另一个进程。您需要编写一个脚本来实例化一个新对象并调用该方法。