/** * @param Lexer $lexer * @param DOMNode $currentElement * @return array|\string[] */ public function replace(Lexer $lexer, DOMNode $currentElement) { if ($this->camelize === true) { $methodName = $this->convertToCamel($this->callback[1]); } else { $methodName = $this->callback[1]; } $resultTokens = []; $resultTokens[] = 'php:function'; $resultTokens[] = '('; $resultTokens[] = '\''; $resultTokens[] = PhpCallback::class . '::callStatic'; $resultTokens[] = '\''; $resultTokens[] = ','; $resultTokens[] = '\''; $resultTokens[] = $this->callback[0]; $resultTokens[] = '\''; $resultTokens[] = ','; $resultTokens[] = '\''; $resultTokens[] = $methodName; $resultTokens[] = '\''; $lexer->next(); if ($lexer->peek($lexer->key() + 1) !== ')') { $resultTokens[] = ','; } return $resultTokens; }
/** * @param Lexer $lexer * @param DOMNode $currentElement * @return array|\string[] */ public function replace(Lexer $lexer, DOMNode $currentElement) { $resultTokens = []; $resultTokens[] = 'php:function'; $resultTokens[] = '('; $resultTokens[] = '\''; $resultTokens[] = PhpCallback::class . '::call'; $resultTokens[] = '\''; $resultTokens[] = ','; $resultTokens[] = '\''; $resultTokens[] = $this->name; $resultTokens[] = '\''; $lexer->next(); if ($lexer->peek($lexer->key() + 1) !== ')') { $resultTokens[] = ','; } return $resultTokens; }