`

利用 Yii Component 的特性为 Model 添加额外属性

    博客分类:
  • PHP
 
阅读更多

 

Yii的使用者都知道Yii是一个基于Component开发的框架,我们平时用到的Controller,Model等其实都是Component,因此我们也可以利用Component的特性来为我们的model添加一些功能。

平时我们建立的user表总是会涉及到first_name, last_name, 而在系统中我们要用到的却经常是完整人名。

//action
$user = User::model()->findByPk($id);
$this->render('show', array('user' => $user));
 

 

//view
<span><?php echo $user->first_name . ' '  . $user->last_name ?></span>

 这是我们经常会采用的方法,其实我们可以为user model 添加一个fullname属性来显示用户全名, 然后在view中直接调用这个属性就可以了

 

<?php
//user model
class User extends CActiveRecord
{
    //.......
 
    public function getFullname()
    {
        if ($this->first_name && $this->last_name) {
            return $this->first_name . ' ' . $this->last_name;
        }
        return 'Unknown';
    }
}
?>
 

 

 

//view
<span><?php echo $user->fullname ?></span>

 这样代码是不是清晰了很多, 我们还可以在属性那个设定函数中实现不同的现实方法。

From:http://www.cnblogs.com/analyzer/articles/1673029.html

分享到:
评论

相关推荐

    yii-1.1.0.r1700.zip_yii_yii1.0 model结构

    `yii-1.1.0.r1700.zip` 是Yii 1.1版本的一个特定修订版,`yii_yii1.0 model结构` 提示我们这次的重点是探讨模型(Model)的架构。 在Yii框架中,MVC(Model-View-Controller)设计模式是核心组成部分。模型(Model...

    Yii CModel中rules验证规格

    Yii的CModel中rules方法中各項參數的說明(僅限於yii1)

    yii实现model添加默认值的方法(2种方法)

    因此,在为属性添加默认值时,需要格外注意这一点。以下是rules()方法中设定默认值的代码示例: ```php public function rules() { return array( // 其他规则定义... array('timestamp', 'default', 'value' =&gt;...

    PHP yii实现model添加默认值的方法(两种方法)

    在PHP的Yii框架中,为Model添加默认值是常见的需求,尤其在处理数据时,有些字段可能不直接从用户输入获取,而是需要在程序运行时动态设置,例如订单编号、时间戳或者当前操作用户的ID。Yii框架提供了多种方式来实现...

    Yii基于数组和对象的Model查询技巧实例详解

    在Yii框架中,Model是与数据库表相对应的类,用于处理数据。Yii的Model查询是Web开发中非常重要的一环,它允许开发者方便地对数据库进行数据操作。本文将详细介绍Yii基于数组和对象的Model查询技巧,并通过实例来...

    Yii权威指南思维导图

    Yii的URL管理器(CUrlManager)可以配置为生成和解析友好的SEO优化的URL。 视图在Yii中通过CView类实现,它负责渲染模板并输出结果。Yii支持视图助手(Helper),如CHtml,提供了许多方便的HTML生成方法。同时,Yii...

    yii2 通用后台系统

    总的来说,"yii2 通用后台系统"是一个利用Yii2框架强大特性的后台管理系统,它集成了用户管理、权限控制、上传功能等常见后台需求,同时具有高度可扩展性和可定制性,是企业级Web应用开发的理想选择。通过深入学习和...

    深入理解Yii2.0 最新版

    Yii2.0中的对象与组件(Component)有着紧密联系,同时对象的配置方法也非常重要。事件(Event)和行为(Behavior)是Yii2.0的高级特性,涉及事件的绑定、触发和处理,以及如何在对象中定义和使用行为。 2. Yii2.0...

    yii源码

    5. **组件系统**:Yii的核心之一就是组件系统,`yii\base\Component`是所有组件的基类。组件可以有属性和事件,通过事件绑定,可以实现复杂的交互逻辑。 6. **缓存机制**:Yii提供了多种缓存策略,包括文件缓存、...

    yii框架中文手册教程和YII模板

    Yii框架是一款高效的、基于组件的PHP开发框架,用于构建高性能的Web应用。它以其卓越的性能、丰富的特性、易于学习的API以及...通过深入学习和实践,开发者可以充分利用Yii的强大功能,构建出高效、可扩展的Web应用。

    YII框架中文手册

    2. **MVC架构**:Yii遵循Model-View-Controller(模型-视图-控制器)设计模式,确保代码的组织性和可维护性。模型处理数据逻辑,视图负责展示,控制器协调两者。 3. **数据库操作**:Yii提供Active Record模式,...

    YII动态模型(动态表名)支持

    Yii的源码是开源的,开发者可以查看`yii\base\Model`和`yii\db\ActiveRecord`的源码,以了解其工作原理。学习源码有助于提高对框架的理解,从而更好地利用其特性并进行定制化开发。 标签 "工具" 提醒我们,Yii框架...

    yii-1.1.13源码

    `yiisoft/yii/framework`是核心框架目录,包含基础类和核心组件,如CApplication、CController、CModel等。其他如` yiisoft/yii/framework/web`针对Web应用的组件,`yiisoft/yii/framework/db`用于数据库操作。 2. ...

    yii框架中文文档、yii中文手册教程

    Yii框架以性能优化为设计核心,提供了一系列现代化的Web开发工具和技术,使得开发者可以快速、高效地编写高质量的代码。 在“yii1.1中文文档”中,包含了Yii 1.1版本的详尽教程和参考指南。这个版本是Yii框架的一个...

    yii的小部件使用

    其中,小部件(Widgets)是Yii框架中一个非常重要的特性,能够帮助开发者轻松实现代码复用,提高开发效率。 #### 二、Yii框架中的小部件概述 小部件(Widgets)是Yii框架中用于封装可重用组件的一种机制。它类似于...

    yii2框架实现验证码的添加以及验证

    在 Yii2 中实现验证码的添加与验证是常见的安全措施,可以防止自动化程序(如机器人)进行恶意操作,如批量注册、恶意登录等。下面将详细介绍如何在 Yii2 框架中实现这一功能。 1. **安装扩展** 验证码功能通常...

    新下载的yii2,yii framework

    它遵循“简洁即高效”的设计理念,提供了丰富的特性,如MVC(Model-View-Controller)、I18N/L10N(国际化和本地化)、缓存管理、数据库抽象层以及安全防护等,使得开发者能够快速构建可扩展、易于维护的Web应用。...

Global site tag (gtag.js) - Google Analytics