0

Мне нужно сделать zend 2 веб-приложение, но с нулевое знание в нем.Как вернуться в zend 2 как laravel

Во всех учебниках я видел, все они устанавливают имена файлов взглядов в module.config.php, в Laravel все, что вам нужно установить это маршрут для view, и вы можете установить в контроллере, какой файл следует передать этому маршруту.

Так как же превратить этот Laravel код ZEND 2 Код:

$ FileDirectory = isMobile()? "viewfiledirectory/viewfile_mobile": "viewfiledirectory/viewfile";

return View :: make ($ fileDirectory);

Или, если это не эквивалент zend 2, по крайней мере, как это сделать, каждый файл жестко закодирован на карте шаблонов, как бы я мог заставить контроллер указывать на это маршрут.

Это большой сайт, по крайней мере, 8 страниц (только один будет использоваться в зависимости от набора языков и в зависимости от устройства пользователя, а также) за маршрут, я не могу просто перечислить все файлы в шаблоне карта module.config.php, я хочу, чтобы это было похоже на то, что я делаю в laravel.

ответ

2

В Zend Framework 2, вы реализуете представление как файл шаблона, который является файлом , имеющий .phtml расширения ("PHTML" означает PHP + HTML). Шаблоны для просмотра имеют такое имя , потому что они обычно содержат HTML-код, смешанный с фрагментами PHP-кода, которые используются для рендеринга веб-страниц. Виды обычно живут внутри вид подкатегория модуля.

В вашем контроллере вы используете класс ViewModel для передачи переменных в шаблон представления. Вид модель также может быть использована для установки имени шаблона просмотра (посмотреть пример ниже):

<?php 
// IndexController.php 
namespace Application\Controller; 

use Zend\Mvc\Controller\AbstractActionController; 
use Zend\View\Model\ViewModel; 

class IndexController extends AbstractActionController { 

    // The "index" action 
    public function indexAction() { 

    // Pass two variables to view template 
    $viewModel = new ViewModel(array('var1'=>$var1, 'var2'=>$var2)); 

    // Set view template name 
    $templateName= $this->isMobile() ? "index/viewfile_mobile" : "index/viewfile"; 
    $viewModel->setTemplate($templateName); 

    // Return the view model 
    return $viewModel; 
    } 
} 

Если вам необходим базовое объяснение концепции просмотров в Zend Framework 2, я рекомендовал бы вам прочитать Using Zend Framework 2 книги ,

+0

Фантастический! И это предполагает, что «index/viewfile» находится внутри папки просмотра, правильно? –

+0

Да, вы правы. – OlegKrivtsov

+0

Это сработало спасибо вам большое! –

Смежные вопросы