首页 >后端开发 >php教程 >CakePHP 视图

CakePHP 视图

PHPz
PHPz原创
2024-09-10 17:25:25930浏览

MVC 中的字母“V”代表视图。视图负责根据请求将输出发送给用户。 查看类是加快开发过程的强大方法。

查看模板

CakePHP 的视图模板文件从控制器获取数据,然后渲染输出,以便可以正确地向用户显示。我们可以在模板中使用变量、各种控制结构。

模板文件存储在 src/Template/ 中,该目录以使用该文件的控制器命名,并以其对应的操作命名。例如,产品控制器的 “view()” 操作的 View 文件通常可以在 src/Template/Products/view.php 中找到。

简而言之,控制器(ProductsController)的名称与文件夹(Products)的名称相同,但没有单词Controller,并且控制器(ProductsController)的操作/方法(view())名称与视图文件的名称(view.php)。

查看变量

视图变量是从控制器获取值的变量。我们可以在视图模板中使用任意数量的变量。我们可以使用 set() 方法将值传递给视图中的变量。这些设置的变量将在您的操作呈现的视图和布局中可用。以下是 set() 方法的语法。

Cake\View\View::set(string $var, mixed $value)

此方法采用两个参数 - 变量名称其值.

示例

config/routes.php 文件中进行更改,如以下程序所示。

config/routes.php

<?php use Cake\Http\Middleware\CsrfProtectionMiddleware;
use Cake\Routing\Route\DashedRoute;
use Cake\Routing\RouteBuilder;
$routes->setRouteClass(DashedRoute::class);
$routes->scope('/', function (RouteBuilder $builder) {
   // Register scoped middleware for in scopes.
   $builder->registerMiddleware('csrf', new CsrfProtectionMiddleware([
      'httpOnly' => true,
   ]));
   $builder->applyMiddleware('csrf');
   $builder->connect('template',['controller'=>'Products','action'=>'view']);
   $builder->fallbacks();
});

src/Controller/ProductsController.php 创建 ProductsController.php 文件。 将以下代码复制到控制器文件中。

src/Controller/ProductsController.php

<?php declare(strict_types=1);
namespace App\Controller;
use Cake\Core\Configure;
use Cake\Http\Exception\ForbiddenException;
use Cake\Http\Exception\NotFoundException;
use Cake\Http\Response;
use Cake\View\Exception\MissingTemplateException;
class ProductsController extends AppController {
public function view(){
      $this->set('Product_Name','XYZ');
   }
}

src/Template 创建一个目录 Products,并在该文件夹下创建一个名为 view.php 的 View 文件。将以下代码复制到该文件中。

Value of variable is: <?php echo $Product_Name; ? >

通过访问以下 URL 来执行上述示例。

http://localhost/cakephp4/template

输出

上面的 URL 将产生以下输出。

CakePHP 视图

以上是CakePHP 视图的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn