位置: 编程技术 - 正文

ThinkPHP表单数据智能写入create方法实例分析(thinkphp操作数据库)

编辑:rootadmin

推荐整理分享ThinkPHP表单数据智能写入create方法实例分析(thinkphp操作数据库),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:thinkphp excel导入导出数据库,thinkphp表单提交,thinkphp5数据库操作,thinkphp操作数据库,thinkphp5数据库操作,thinkphp表单数据回显,thinkphp table,thinkphp table,内容如对您有帮助,希望把文章链接给更多的朋友!

本文实例讲述了ThinkPHP表单数据智能写入create方法。分享给大家供大家参考。具体如下:

创建数据对象 create()

除了手动构造入库的数据集之外,ThinkPHP 还提供了自动创建数据对象的 create() 方法。create() 方法将自动收集提交的表单数据并创建数据对象而无需人工干预,这在表单数据字段非常多的情况下更具优势。

将前文写入表单数据的例子用 create() 来实现:

create() 创建数据对象后,将自动收集提交过来的表单数据。而表单数据可能需要经过一定加工(例如将密码加密)才能写入数据表,所以可以对数据对象的成员属性值根据进行修改或添加去除等。

提示:create() 创建的数据对象存放于内存,在执行入库动作(add() 或 save())之前,都可以进行修改。

在上面的例子里,create()方法 的行为和 date()方法 是一致。但 date() 方法只是简单的创建数据对象,但 create() 方法还具备:

① 令牌验证② 数据自动验证③ 字段映射支持④ 字段类型检查⑤ 数据自动完成

等各种高级的数据功能,要完成这些高级数据模型功能,需要使用 D方法 实例化数据模型。ThinkPHP 提供了各种验证与填充规则供调用,具体可参见《ThinkPHP 自动验证》与《ThinkPHP 自动填充》相关文章。

ThinkPHP表单数据智能写入create方法实例分析(thinkphp操作数据库)

自动验证与自动填充

在将表单写入数据表之前,常常会有一些对数据的检测(提交的用户名是否符合要求)与处理(如例子中的密码加密以及取得当前时间戳)。create() 方法就支持数据的自动验证与自动完成。

在 LibModel 目录下创建 UserModel.class.php 文件(User 为创建的模型对象,也对应 前缀_user 表),加入自动验证和自动填充规则:

将 insert2 操作更改为:

如果提交的数据不符合验证要求(如用户名存在),则 create() 创建数据对象失败(返回 FALSE ),$Dao->getError() 会打印出自动验证设置规则里面设置的提示信息:用户名已经存在!

如果验证规则通过后,系统会进行自动填充设置,将表单密码进行 MD5 加密以及取得当前的时间戳填充入 create() 的数据对象。

所以 D方法 配合 create() 是非常智能而强大的,恰当运用可以达到事半功倍快速开发的目的。

提示:

① D 方法配合 create() 由于其功能强大,也就损失了一定的效率,在业务逻辑不复杂的情况下推荐 M方法+data() 模式

② create() 默认接受 POST 数据,若要接受其他类型数据,只需在参数内指定即可,如接受 GET 数据:create($_GET)

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

PHP中把对象数组转换成普通数组的方法 最近在用ThinkPHP开发一个京东服务市场的应用,然而京东服务市场接口返回的数据是个对象数组。然而需要一个个属性取出来放到数组里面然后再利用Thi

ajax+php控制所有后台函数调用 总共分成3大部分来完成php的ajax调用逻辑,以下是大致的结构第一部分:ajax请求:主要是action这个参数,LoginController是php的类名,login是LoginController这个

php中实现用数组妩媚地生成要执行的sql语句 会不会碰到这样一种情况呢?每次获取数据将数据和历史版本都有一定的差别,然而用ThinkPHP的addAll()函数,却会将已有的数据删掉再重新写入。这明显

标签: thinkphp操作数据库

本文链接地址:https://www.jiuchutong.com/biancheng/284437.html 转载请保留说明!

上一篇:ThinkPHP数据操作方法总结(thinkphp 数据库查询)

下一篇:PHP中把对象数组转换成普通数组的方法(在php中,什么函数能将数组转化为字符串)

  • 人民大学税务专硕学费
  • 增值税交多少怎么查询
  • 资本公积转增资本的限制条件
  • 上月社保未扣款怎么回事
  • 吸收合并一般需要多久
  • 会展服务费怎么开票
  • 专家评审费属于劳务费吗
  • 税务逾期记录怎么消除不了
  • 一般纳税人必须先有进项才能开出来发票吗
  • 暂估入库原材料成本结转后期发票到怎么处理
  • 刚成立公司没有报表怎么解释
  • 建筑行业新老项目对比
  • 车船税没有发票吗?
  • 年度所得税汇算清缴报告在哪打印
  • 拆除固定资产的补偿款
  • 所有的企业都能采用免费策略
  • 核定征收的对象
  • 公司发生业务分录
  • 营改增后发票
  • 采用差额计税开什么发票
  • 进口设备不需要交关税吗
  • 个人名义去税务局开票
  • 国家税务局通用定额发票还能用吗
  • 外包食堂需要什么资质
  • 已知不含税金额和增值税如何计算税率
  • 留存收益会计科目编号
  • 怎么确认投资性资金
  • 有现金折扣的采购业务全流程
  • 全资的子公司
  • 购入固定资产预算会计怎么做账务处理
  • 腾讯电脑管家中蓝牙在哪
  • 工程结算转主营业务收入
  • 办理发票缴销需要提供的资料
  • thinkphp vue
  • PHP:json_last_error()的用法_JSON函数
  • 母公司收取子公司利润交增值税吗
  • php做登录界面连接数据库
  • php gzip压缩
  • 财务费用的核算属于什么业务
  • vuex使用步骤
  • vue路由的理解
  • 劳务报酬根据什么确定
  • 小微企业所得税优惠政策最新2023
  • 企业办理税务注销需要什么资料
  • 不单独计价的包装物是什么意思
  • 季度亏损需要计提企业所得税吗
  • 企业给员工交公积金怎么办理
  • 其他应收款审计说明怎么写
  • 销售边角料的增值税率
  • 房地产公司车位出租会计分录
  • 税务稽查其他应付款
  • 会计科目费用类
  • 公司收到劳务发票交个税吗
  • centos6.5中文
  • ubuntu和debian哪个稳定
  • mac文件权限
  • linux检测硬盘故障
  • linux禁止ping的命令
  • 如何在win7系统中查看电脑基本信息
  • win7系统安装谷歌浏览器
  • linux 清除垃圾
  • Extjs grid panel自带滚动条失效的解决方法
  • three.js怎么用
  • debug命令及其基本操作
  • python构造方法的参数
  • cocos2dx3.0的label字体去描边
  • jquery源码是什么水平
  • 用jquery实现动态添加
  • node语句
  • 安卓修改udid
  • webview设置ua
  • jqueryfor循环
  • 国家税务总局张局长
  • 广东发票查询真伪网站
  • 资源税选矿和原油的区别
  • 个人账户手机银行如何对公转账
  • 如何在河南省社会保障网上平台进行社保基数申报
  • 增值税留抵退税政策
  • 养猪环保局有什么新政策
  • 药店开给个人的增值税发票是什么样
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设