`

Yii: 利用Clip片段构建复杂界面

    博客分类:
  • PHP
 
阅读更多

layout:

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
    <head>
        <title>Clip</title>
    </head>
    <body>
        <div id="header">
            this is header and main menu here
        </div>
        <div id="main">
            <div id="left">
                <?php echo $content ?>
            </div>
 
            <div id="right">
                <div class="block">
                    <?php echo $this->clips['submenu'] ?>
                </div>
 
                <div class="block">
                    <?php echo $this->clips['desc'] ?>
                </div>
            </div>
        </div>
        <div id="footer">
            footer section
        </div>
    </body>
</html>

 

 view的实现:

 

hello, this is the view 1
 
<?php $this->beginClip('submenu') ?>
here is the sub menu for view 1
<?php $this->endClip() ?>
 
<?php $this->beginClip('desc') ?>
here is the description for view 1
<?php $this->endClip() ?>

 

 

hi, view 2 is here
 
<?php $this->beginClip('submenu') ?>
here is the sub menu for view 2
<?php $this->endClip() ?>
 
<?php $this->beginClip('desc') ?>
here is the description for view 2
<?php $this->endClip() ?>
 

注意:

当然clip也不是非常完美, 和django中的block相比,我们不能为每个clip都设定一个初始值,这样我们要在每个view中都给clip赋值,这有点小麻烦

分享到:
评论

相关推荐

    Yii_RedisCache

    $cache = \Yii::$app-&gt;cache; $data = $cache-&gt;get('my_key'); if ($data === false) { $data = //... 计算或获取数据 $cache-&gt;set('my_key', $data, 3600); // 设置缓存,过期时间为1小时 } ``` **Redis 的优势*...

    Yii框架快速入门

    ### Yii框架快速入门详解 #### 一、Yii框架概述 ...通过深入理解其核心概念,如入口脚本、应用程序以及MVC架构的运用,开发者可以充分利用Yii的强大功能,快速构建出稳定、高效且可维护的Web应用。

    YII Framework框架教程之日志用法详解

    两者的区别在于`Yii::trace`在非调试模式下不会输出日志,而`Yii::log`在任何情况下都会记录信息。 使用`Yii::log`或`Yii::trace`记录日志时,你可以指定消息内容、消息级别和消息类别。消息级别是区分不同类型日志...

    Yii框架实现邮箱激活的方法【数字签名】

    $email=Yii::$app-&gt;request-&gt;get('email'); //数字签名 $em_1=md5($email); //邮箱发送 $mail= Yii::$app-&gt;mailer-&gt;compose(); $mail-&gt;setTo($email); $mail-&gt;setSubject("激活邮箱"); //发布可以带html标签...

    yii框架教程

    组件可以通过 `Yii::app()-&gt;ComponentID` 的方式访问,例如 `Yii::app()-&gt;cache`。组件默认按需创建,以避免影响性能。但也可以通过将组件 ID 添加到 `preload` 属性中来确保它们始终被创建。 ##### 2.5 关闭组件 ...

    Yii框架日志记录Logging操作示例

    1、Yii::getLogger()-&gt;log($message, $level, $category = 'application') 2、Yii::trace($message, $category = 'application'); 3、Yii::error($message, $category = 'application'); 4、Yii::warning($message, ...

    Yii框架中使用PHPExcel的方法分析

    `Yii::import()`方法则负责构建类的引入路径,并在必要时将类添加到缓存中,以供后续使用。 当使用`Yii::import()`时,如果没有指定`$forceInclude`为`true`,类文件不会立即加载,只有在尝试实例化或使用该类时才...

    PHP YII 发送邮件扩展

    使用方法: $mail = new YiiMailer(); //$mail-&gt;clearLayout();...$mail-&gt;setTo(Yii::app()-&gt;params['adminEmail']); $mail-&gt;setSubject('Mail subject'); $mail-&gt;setBody('Simple message'); $mail-&gt;send();

    Yii控制器中操作视图js的方法

    Yii::app()-&gt;clientScript-&gt;registerScriptFile(Yii::app()-&gt;baseUrl.'/js/my.js'); ``` 同样的方法也可以用来注册CSS文件: ```php Yii::app()-&gt;clientScript-&gt;registerCssFile(Yii::app()-&gt;baseUrl.'/css/my.css...

    Yii2中设置与获取别名的函数(setAlias和getAlias)用法分析

    例如,如果有别名"@foo"=&gt;"my"和"@foo/test"=&gt;"my/test",那么使用`Yii::getAlias("@foo/test/config");`将会返回"my/test/config"。 在Yii2中,setAlias函数的源码逻辑如下: 1. 如果别名不是以"@"开头,则在前面...

    The Yii Book: Developing Web Applications Using the Yii PHP Framework(Part1&2)

    在书中,Larry Ullman详尽地讲解了如何利用Yii这一高效、简洁且可扩展的PHP框架来构建高质量的Web应用。 Yii框架是基于组件的、高性能的PHP框架,适用于开发大型企业级Web应用。它提供了丰富的特性,如MVC架构、...

    yii ajax demo

    if (Yii::$app-&gt;request-&gt;isAjax && Yii::$app-&gt;request-&gt;isPost) { $data = Yii::$app-&gt;request-&gt;post(); // 进行业务逻辑处理 // ... Yii::$app-&gt;response-&gt;format = \yii\web\Response::FORMAT_JSON; ...

    Yii教案素材整理

    它遵循MVC(模型-视图-控制器)设计模式,使得开发者能够快速构建和维护复杂的Web应用程序。Yii框架以其高性能、安全性、可定制性而受到广大开发者的青睐。本篇教案素材整理详细讲解了Yii框架的基本概念、安装方法...

    php yii源码分析

    使用 `Yii::createWebApplication($config)` 创建了一个 `CWebApplication` 实例,这是 Yii 中的 Web 应用程序类。这个方法首先调用 `createApplication` 静态方法,然后通过 `new CWebApplication($config)` 实例...

    yii扩展--ip地址识别--QQWRY

    YII扩展 IP地址识别组件 采用QQWRY数据库 ... $qqwry = Yii::app()-&gt;ip; $ip = $qqwry-&gt;getlocation("192.168.1.1"); $country = iconv('GB2312', 'UTF-8', $ip[country]); echo $country; 完成!

    yii2-psr7-bridge:用于Yii2的PSR7桥和PSR-15适配器

    此网桥的用例是使Yii2可以与PSR-7和PSR-15中间人以及诸如RoadRunner和PHP-PM之类的任务运行器一起使用,而对您的应用程序的代码更改最少(例如,无需更改对Yii::$app-&gt;request任何调用Yii::$app-&gt;request和Yii::$...

    Yii 读写分离 分表分库

    return Yii::$app-&gt;dbRead; } } ``` 3. 修改查询方法:在查询时使用`dbConnection()`返回的连接对象执行SQL语句。 二、分库分表 分库分表是指将一个大表分成多个小表,存储在不同的数据库中,以提高查询效率。...

    learn_yii2crmapp:学习 Yii 2 构建 CRM 应用程序

    "learn_yii2crmapp"项目旨在教授如何利用 Yii 2 框架构建客户关系管理(CRM)应用。 【CRM 应用程序】 CRM 系统是企业用来管理与客户、潜在客户以及合作伙伴之间交互的重要工具。它包括销售、市场营销和服务支持等...

Global site tag (gtag.js) - Google Analytics