FuelPHP - 演讲者


FuelPHP 在控制器之后提供了一个附加层来生成视图。一旦控制器处理输入并完成业务逻辑,它会将控件发送到 Presenter ,Presenter负责处理额外的逻辑,例如从数据库获取数据、设置视图数据等,然后调用 View目的。

我们可以使用 Presenter 类渲染视图,如下所示 -

燃料/应用程序/类/控制器/employee.php

public Controller_Employee extends Controller { 
   public function action_welcome() { 
      return Presenter::forge('employee/hello'); 
   } 
}

Presenter 类的默认位置是Fuel/app/classes/presenter/。下面是一个简单的例子。

燃料/应用程序/类/演示者/员工/hello.php

<?php  
   class Presenter_Employee_Hello extends Presenter { 
      public function view() { 
         $this->name = Request::active()->param('name', 'World'); 
      } 
   } 

上述演示者类的视图文件解析为相对于views文件夹的employee/hello.php,这是指定的。

燃料/应用程序/视图/员工/hello.php

<h3>Hi, <?php echo $name; ?></h3> 

最后,更改路线以匹配员工的欢迎动作,如下所示 -

燃料/应用程序/配置/routes.php

'employee/hello(/:name)?' => array('employee/welcome', 'name' => 'hello'), 

现在,请求 URL http://localhost:8080/employee/hello/Jon会呈现以下结果。

结果

演示者视图