ZF2 - 如何使用require_once作为$ this-> render?

In my ZF2 i am trying to use $this->render('render/email/template') but its failing to load the file, therefore when i do following method, it worked.

But while using require_once i cant get the content in $variable to process later, it dumps the value instantly, where ->render() method can put it in a variable.

How do i use require_once like ZF $this->render?

define('ROOT_PATH', dirname(__DIR__));
require_once (ROOT_PATH . '/Controller/render/email/template.phtml');

EDIT:

  public function indexAction() {
    error_reporting(E_ALL); ini_set('display_errors', 1);

    /*
    $this->layout('layout/email/header_footer');
    $view = new ViewModel(array(
        'name' => 'OKOKOKOK'
    ));  
    $view->setTemplate('layout/email/template');
    $html= $view;
    echo $html;*/

    define('ROOT_PATH', dirname(__DIR__));
    $this->layout('layout/email/header_footer');
    $view = new ViewModel(array(
      'name' => 'OKOKOKOK'
    ));     

    $view->setTemplate('layout/email/template');
    $viewRenderer = $this->getServiceLocator()->get('ViewRenderer');
    $html = $viewRenderer->render($view);
    echo $html;

    exit;

In ZF2 you need to set and render the template like this if you want to store it in a variable:

$view->setTemplate(ROOT_PATH . '/Controller/render/email/template.phtml');
$viewRenderer = $this->getServiceLocator()->get('ViewRenderer');
$html = $viewRenderer->render($view);

You can nest views as well:

$mainView = new ViewModel();
$mainView->setTemplate(ROOT_PATH . 'path/to/your/header_footer.phtml');

$contentView = new ViewModel(array(
  'name' => 'OKOKOKOK'
));
$contentView->setTemplate(ROOT_PATH . '/Controller/render/email/template.phtml');

$mainView->addChild($contentView, 'content');

You can find more information here

Updates of Simon.

<?php

namespace Application\Controller;
use Zend\Mvc\Controller\AbstractActionController;
use Zend\View\Model\ViewModel;
use Zend\Debug\Debug;

class TestController extends AbstractActionController {

  public function irender($html, $input) {
    $view = new ViewModel($input); 
    //$view->setTemplate('layout/email/default');
    $view->setTemplate($html);
    $viewRenderer = $this->getServiceLocator()->get('ViewRenderer');
    return $viewRenderer->render($view);
  }

  public function indexAction() {
    error_reporting(E_ALL); ini_set('display_errors', 1);

    /*
Project path where the file is: /var/www/html/projectzf/module/Application/view/layout/email/default.phtml
  */
    echo $this->irender('layout/email/default', array(
        'name' =>'OK OK OK'
    ));

    exit;  
  }

}