FuelPHP - 呈现器



FuelPHP 在控制器之后提供了一层其他内容来生成视图。控制器一旦处理完输入并完成业务逻辑后,它会将控制权发送给 **呈现器**,后者负责附加逻辑(例如,从数据库中获取数据、设置视图数据等),然后调用视图对象。

我们可以使用呈现器类按如下方式呈现视图 −

fuel/app/classes/controller/employee.php

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

呈现器类的默认位置为 fuel/app/classes/presenter/。以下是一个简单的示例。

fuel/app/classes/presenter/employee/hello.php

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

上述呈现器类的视图文件解析为相对于 views 文件夹的 employee/hello.php,正如指定的那样。

fuel/app/views/employee/hello.php

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

最后,更改路由以匹配员工的欢迎操作,如下所示 −

fuel/app/config/routes.php

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

现在,请求 URL https://127.0.0.1:8080/employee/hello/Jon 将呈现以下结果。

结果

Presenter View
广告