コード例 #1
0
ファイル: Internal.php プロジェクト: asgrim/PHPPHP
 public function execute(Engine\Executor $executor, array $args, Engine\Zval\Ptr $return, \PHPPHP\Engine\Objects\ClassInstance $ci = null, \PHPPHP\Engine\Objects\ClassEntry $ce = null)
 {
     if ($this->checkParams($executor, $args, true)) {
         call_user_func_array($this->callback, array($executor, $args, $return, $ci, $ce));
     } else {
         $return->setValue(null);
     }
 }
コード例 #2
0
ファイル: User.php プロジェクト: asgrim/PHPPHP
 public function execute(Engine\Executor $executor, array $args, Engine\Zval\Ptr $return, \PHPPHP\Engine\Objects\ClassInstance $ci = null, \PHPPHP\Engine\Objects\ClassEntry $ce = null)
 {
     $scope = array();
     if (!$args) {
         $args = array();
     }
     $this->checkParams($executor, $args);
     if ($this->byRef) {
         $return->makeRef();
     }
     $executor->execute($this->opArray, $scope, $this, $args, $return, $ci, $ce);
 }
コード例 #3
0
ファイル: InternalProxy.php プロジェクト: asgrim/PHPPHP
 public function execute(Engine\Executor $executor, array $args, Engine\Zval\Ptr $return = null, \PHPPHP\Engine\Objects\ClassInstance $ci = null, \PHPPHP\Engine\Objects\ClassEntry $ce = null)
 {
     $rawArgs = $this->compileArguments($args);
     ob_start();
     $ret = call_user_func_array($this->callback, $rawArgs);
     $out = ob_get_clean();
     if ($out) {
         $executor->getOutput()->write($out);
     }
     if ($return) {
         $return->setValue($this->compileReturn($ret));
     }
 }