位置: 编程技术 - 正文

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

  • 印花税计提缴纳的会计分录
  • 递延所得税资产怎么计算
  • 取得的免税发票怎么开
  • 固定资产的折余价值计算公式
  • 银行汇票用什么账户核算
  • 企业净利率多少算正常
  • 收到借款利息如何计算
  • 代扣代缴完税凭证是什么
  • 公墓增值税政策
  • 复印的原始凭证可以作为记账依据吗
  • 城市维护建设税是什么意思
  • 预付房租摊销账务处理
  • 经营租赁的资产应计入哪里
  • 应收票据怎么写
  • 公司结业清算后多久注销
  • 企业贷款银行罚息可以减免吗?
  • 事业单位收到增资款
  • 需要月报的税收项目
  • 公司注销时资本要交税吗
  • 应纳税额减征额和减免税额一样吗
  • 发票查询结果显示不出来
  • 积分现金兑换比例怎样计算
  • 企业可以用当月的进项票抵扣上月的销项吗?
  • 可转换债券转换权的价格怎么算
  • 待摊费用核算的内容主要包括
  • 新租赁准则承租人计提折旧吗
  • 采用支付手续费方式委托代销商品
  • 简易计税进项税额转出公式
  • 金融资产有哪三类代码
  • 母公司是否应替子公司承担违约责任
  • 支付安装设备所有费用
  • windows7部分的更新安装失败怎么办?
  • windows11怎么删除临时文件
  • windows11正式版本
  • ezulumain.exe是病毒进程吗 ezulumain进程安全吗
  • 资产减值准备怎么影响利润
  • pddpic是什么文件
  • linux 临时修改环境变量
  • 置换土地如何做账务处理
  • 建筑安装发票可以外地开吗
  • 微信小程序不方便
  • 小规模减免的附件有哪些
  • 杜布罗夫尼克老城去机场
  • [Vue]Vue3学习笔记(尚硅谷)
  • php处理接收的xml
  • ssd训练自己的数据集pytorch
  • 残疾人个人所得税减免怎么填写申报
  • wordpress怎么删除文章
  • mysql使用技巧
  • mysql常见优化手段
  • 转账支票背书盖章图位置
  • 企业基金分红具备的条件
  • 有净残值的固定资产怎么计提折旧
  • 填制费用报销单怎么填写
  • 收到合同预付款在账上怎么记
  • 建筑企业其他应付款包含什么内容
  • 出口为什么没有增值税
  • 业务招待费可以开专票抵扣吗
  • 企业注销预付账款怎么做
  • sql判断字段是否包含数字和字母
  • sql server2000个人版安装步骤
  • system is boot up with
  • 解析包出现错误无法安装怎么办
  • mac 锁屏
  • 安装win7系统后进不了系统
  • win8系统没有自带的游戏吗
  • win7开机提示音在哪里关闭
  • win8系统连接共享打印机需要设置什么
  • cocos2d-x教程
  • 如何获取system权限win10
  • JavaScript运算符都有哪些
  • easyui-accordion
  • python根据ip获取主机名
  • unity导出ios项目到iphone
  • unity ugui教程
  • jquery 图片裁剪
  • 普通话的对话
  • 甘肃国家税务局兰州专用章图片
  • 陕西地税发票怎么重新打印
  • 国家税务总局大连电子税务局
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设