位置: 编程技术 - 正文

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中,什么函数能将数组转化为字符串)

  • 筹建期的收入要交企业所得税吗
  • 工资以现金形式发放的情况说明
  • 发票打印格式错误
  • 季度30万免增值税2019
  • 受托开发软件产品免征增值税
  • 上一年度凭证不填可以吗
  • 有留抵税额要考虑税负吗
  • 收到的油费预付怎么入账
  • 员工奖金分两次发怎么交税?
  • 少缴纳社保怎么要求支付赔偿金
  • 如何异地缴纳个人医保
  • 营改增之后还有营业税金及附加吗
  • 印花税是填开票金额吗
  • 补充养老保险税收规定扣除率
  • 慰问金怎么入账科目
  • 免抵税额增值税主表体现到哪里的
  • 工会经费返还账务处理,另记账么
  • 此次新政策对原来就是小型微利企业的纳税人有影响吗?
  • 质量扣款发票怎么处理
  • 资产减值损失怎么处理
  • 如何在Excel中合并计算
  • 光伏电站运维费用清单
  • 旅客购买电子客票
  • 苹果手机记事本提醒如何设置
  • php 静态变量
  • win11自带的播放器
  • php字符串变量
  • 最大的数码相机是多少寸
  • 销售已使用过的小汽车增值税
  • 弗拉维亚王朝
  • 在建工程账务核算方法
  • 详解php字符串替换
  • 实物资产的管理
  • Symfony2创建页面实例详解
  • 免税需要什么条件
  • 郁金香地图
  • framework模块
  • vscode常用插件功能简介
  • 数据 挖掘
  • yum安装php5
  • 逆算法怎么算
  • php处理304缓存
  • 代扣代缴应付职工薪酬账务处理
  • 预支工资的借条图片
  • 个体户办营业执照网上怎么申请
  • 餐饮发票归哪个部门管
  • 加油的电子发票在哪里找
  • MySQL读写分离中间件
  • 应付账款重分类是什么意思
  • 农副产品收购分录
  • 公司代缴社保如何查询
  • 不用人工
  • 业务提成需要缴纳个人所得税吗?
  • 车子租赁费开什么发票?多少税
  • 金蝶专业版怎么反过账
  • 非货币性资产交换的会计处理
  • 费用预算表怎么做
  • sql语句 时间差
  • 快速打开当前文件的方法
  • win8怎么让我的电脑显示在桌面上
  • windowsxp2
  • u盘装系统系统资料会被泄露吗
  • u盘装好系统后重启无法进入系统
  • mac怎么创建网络
  • win10周年纪念版
  • win8免密码登录
  • windows7怎么关不了机怎么办
  • 在unity中单例的主要作用
  • 低端显卡n卡设置
  • JavaScript的strict模式与with关键字介绍
  • linux oracle数据库登录
  • unity3d开发流程
  • jQuery fancybox在ie浏览器下无法显示关闭按钮的解决办法
  • jquery的过滤器用于指定什么东西
  • EditText 点击事件小问题
  • 利息收入通过什么科目核算
  • 成品油消费税税目
  • 消费税由谁来承担
  • 00后先进人物事迹简介
  • 成都国税发票领取地点
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设