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


Posted in PHP onNovember 10, 2016

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

这篇文章主要介绍了yii实现model添加默认值的方法,结合实例分析了在rules()方法及在beforeSave()方法中设定两种实现技巧,对大家也许有帮助,

本文实例讲述了yii实现model添加默认值的方法。分享给大家供大家参考,具体如下:

yii model 继承自CActiveRecord

有些字段可能不会出现在表单中,而需要在程序中加入。如订单编号,时间戳,操作的user_id等等。

以下二种方法:

1、在rules()方法中设定:

public function rules()
{
 // NOTE: you should only define rules for those attributes that
 // will receive user inputs.
 return array(
  array('start, end', 'required'),
  array('user_id', 'numerical', 'integerOnly'=>true),
  array('timestamp','default','value'=>date('Y-m-d H:i:s')),
  // The following rule is used by search().
  // Please remove those attributes that should not be searched.
  array('id, start, end, user_id, timestamp', 'safe', 'on'=>'search'),
 );
}

 2、在beforeSave()方法中设定:

function beforeSave()
{
 $this->user_id = Yii::app()->user->id;
 return true;
}

需要注意的是,beforeSave()方法需要return true,否则不会保存。

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

PHP 相关文章推荐
用PHP实现读取和编写XML DOM代码
Apr 07 PHP
php smarty模板引擎的6个小技巧
Apr 24 PHP
php选择排序法实现数组排序实例分析
Feb 16 PHP
php动态生成版权所有信息的方法
Mar 24 PHP
深入探究PHP的多进程编程方法
Aug 18 PHP
Laravel的throttle中间件失效问题解决方法
Oct 09 PHP
Yii2――使用数据库操作汇总(增删查改、事务)
Dec 19 PHP
PHP实现针对日期,月数,天数,周数,小时,分,秒等的加减运算示例【基于strtotime】
Apr 19 PHP
三个思路解决laravel上传文件报错:413 Request Entity Too Large问题
Nov 13 PHP
Laravel框架分页实现方法分析
Jun 12 PHP
PHP获取MySQL执行sql语句的查询时间方法
Aug 21 PHP
在Laravel中实现使用AJAX动态刷新部分页面
Oct 15 PHP
PHP实现的曲线统计图表示例
Nov 10 #PHP
PHP  Yii清理缓存的实现方法
Nov 10 #PHP
PHP模拟http请求的方法详解
Nov 09 #PHP
Linux平台PHP5.4设置FPM线程数量的方法
Nov 09 #PHP
浅析php-fpm静态和动态执行方式的比较
Nov 09 #PHP
PHP带节点操作的无限分类实现方法详解
Nov 09 #PHP
thinkPHP批量删除的实现方法分析
Nov 09 #PHP
You might like
坏狼php学习 计数器实例代码
2008/06/15 PHP
PHP面向对象教程之自定义类
2014/06/10 PHP
Laravel源码解析之路由的使用和示例详解
2018/09/27 PHP
Ext JS Grid在IE6 下宽度的问题解决方法
2009/02/15 Javascript
javascript 控制 html元素 显示/隐藏实现代码
2009/09/01 Javascript
javascript中的对象创建 实例附注释
2011/02/08 Javascript
js 判断文件类型并控制表单提交示例代码
2013/11/14 Javascript
jQuery中 attr() 方法使用小结
2015/05/03 Javascript
JQuery实现级联下拉框效果实例讲解
2015/09/17 Javascript
使用BootStrap实现悬浮窗口的效果
2016/12/13 Javascript
详解vue-router 2.0 常用基础知识点之导航钩子
2017/05/10 Javascript
利用JS实现scroll自定义滚动效果详解
2017/10/17 Javascript
vue自定义全局共用函数详解
2018/09/18 Javascript
React中使用外部样式的3种方式(小结)
2019/05/28 Javascript
使用Phantomjs和Node完成网页的截屏快照的方法
2019/07/16 Javascript
vue项目使用高德地图的定位及关键字搜索功能的实例代码(踩坑经验)
2020/03/07 Javascript
JS数组转字符串实现方法解析
2020/09/04 Javascript
[02:39]DOTA2英雄基础教程 极限穿梭编织者
2013/12/05 DOTA
在Python中使用HTMLParser解析HTML的教程
2015/04/29 Python
讲解Python中if语句的嵌套用法
2015/05/14 Python
Python 列表理解及使用方法
2017/10/27 Python
Python自动抢红包教程详解
2019/06/11 Python
python实现登录密码重置简易操作代码
2019/08/14 Python
PyCharm导入python项目并配置虚拟环境的教程详解
2019/10/13 Python
小 200 行 Python 代码制作一个换脸程序
2020/05/12 Python
Python如何实现后端自定义认证并实现多条件登陆
2020/06/22 Python
学习Python爬虫的几点建议
2020/08/05 Python
python 基于opencv操作摄像头
2020/12/24 Python
Skyscanner台湾:全球知名的旅行比价引擎
2018/07/01 全球购物
你所在的项目是如何确定版本号的
2015/12/28 面试题
旅游管理专业学生求职信
2013/09/28 职场文书
个人近期表现材料
2014/02/11 职场文书
《新型玻璃》教学反思
2014/04/13 职场文书
办公室务虚会发言材料
2014/10/20 职场文书
CSS 使用 resize 实现图片拖拽切换预览功能(强大功能)
2021/08/23 HTML / CSS
springboot layui hutool Excel导入的实现
2022/03/31 Java/Android