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

多个网页在不同的位置重复引用某些特定的部分。 CakePHP可以帮助我们重用这些重复的部分。这些可重用部件称为元素-帮助框,额外菜单等;元素是一个迷你视图 ,我们可以在元素中传递变量。CakeViewView::element(string $elementPath, array $data, array $options =[])

上面的函数有三个参数 -第一个参数是在/src/Template/Element/文件夹中的模板文件的名称。

第二个参数是渲染视图所用用到的可用数据的数组。

第三个参数是可选项的数组。例如缓存。

在此3个参数中,第一个是必须的,其余的都是可选的。

在src/Template/Element目录中创建名为helloworld.ctp 的的元素文件。复制以下代码至其中。

src/Template/Element/helloworld.ctp

Hello World

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

src/Template/Elems/index.ctpElement Example: <?php echo $this→element('helloworld'); ?>

在以下项目中,修改config/routes.php文件。

config/routes.php文件<?php

use CakeCorePlugin;

use CakeRoutingRouteBuilder;

use CakeRoutingRouter;

Router::defaultRouteClass('DashedRoute');

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

$routes->connect('/elementexample',['controller'=>'Elems','action'=>'index']);

$routes->fallbacks('DashedRoute');

});

Plugin::routes();

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

src/Controller/ElemsController.php<?php

namespace AppController;

use AppControllerAppController;

use CakeORMTableRegistry;

use CakeDatasourceConnectionManager;

class ElemsController extends AppController{

public function index(){

}

}

?>

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

http://localhost:85/CakePHP/element-example

输出

执行以上程序,您会看到以下页面。

672e7e29a8e4f1985fa01dd181b42e47.png

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值