예제 #1
0
 /**
  * Compile
  *
  * @param Apishka_Templater_Compiler $compiler
  */
 public function compile(Apishka_Templater_Compiler $compiler)
 {
     $left = $compiler->getVarName();
     $right = $compiler->getVarName();
     $compiler->raw(sprintf('(is_string($%s = ', $left))->subcompile($this->getNode('left'))->raw(sprintf(') && is_string($%s = ', $right))->subcompile($this->getNode('right'))->raw(sprintf(') && (\'\' === $%2$s || $%2$s === substr($%1$s, -strlen($%2$s))))', $left, $right));
 }