cakephp视图用php文件,CakePHP的视图

在MVC中,字母“V”就是视图(View)。视图负责发送基于请求的输出给用户。 视图类(View Classes)是加快开发过程的有效方式。

视图模板

CakePHP中的视图模板文件具有默认扩展名.ctp(CakePHP Template)。这些模板从控制器获取数据,渲染输出并适当的显示给用户。我们可以在模版中使用变量,和各种控制结构。

模板文件存储在src/Template/中的一个以使用他的控制器命名的文件夹,或者以它所对应的行为命名的文件夹中。例如,对于产品控制器(Products Controller)view

()行为的视图文件,通常就是src/Template/Products/view.ctp。

总之,控制器(如ProductsController的)的名称和作为目录(Products)的名称相同,但不包含Controller;控制器(如ProductsController)的行为/方法的名称(如view())是和视图文件的名称是相同的(如view.ctp)。

视图变量

视图变量是用来得到控制器值的变量。我们可以在视图模板中使用尽可能多的变量。我们可以使用set()方法在视图中传递值。这些变量集可以在你的视图文件和你要渲染的布局中使用。以下是set()方法的语法。

语法CakeViewView::set(string $var, mixed $value)

这种方法有两个参数- 变量名和它的值 。

在以下程序中,修改config/routes.php文件。

config/routes.php文件<?php

use CakeCorePlugin;

use CakeRoutingRouteBuilder;

use CakeRoutingRouter;

Router::defaultRouteClass('DashedRoute');

Router::scope('/', function (RouteBuilder $routes) {

$routes->connect('template',['controller'=>'Products','action'=>'view']);

$routes->fallbacks('DashedRoute');

});

Plugin::routes();

在src/Controller/目录下创建ProductsController.php文件。复制以下代码至其中。

src/Controller/ProductsController.php<?php

namespace AppController;

use AppControllerAppController;

class ProductsController extends AppController{

public function view(){

$this->set('Product_Name','XYZ');

}

}

?>

在src/Template下创建Products目录,并在Products目录下创建一个名为view.ctp的视图文件。复制以下代码代码至其中。

src/Template/Products/view.ctpValue of variable is: <?php echo $Product_Name; ?>

通过访问以下网址执行上面的例子。

http://localhost:85/CakePHP/template

输出

上述网址会产生以下输出。

1cd816b588ba6f4cee4ca7e624938493.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值