save() create()区别

区别:

save():

save()方法的调用必须先实例化对象,所以是非静态(static)方法;
save()方法的功能是插入或更新(create or update),这个很重要,每一次调用方法都会查找当前的数据是否包含主键和数据表里是否包含当前主键,如果数据中没主键则获得一个自增的主键给当前对象,如果数据表中以存在该主键则更新该条数据;
返回值为 @return integer|false 整型或false。
creat():

create()方法为静态方法;通过通过类直接调用;
create()的功能为实例对象和插入(new and create);
返回值为当前模型的 实例对象。
原因:
save()方法只插入一条数据的原因是,但第一条数据被插入时之前实例好的对象在插入时被赋予了一个主键值,之后的操作由于主键相同就被方法判定为更新操作,导致数据库中只多了一条数据。
而create()方法每一次执行都生成一个实例对象,每一个对象都会得到一个不同的主键,所有可以插入多条相同数据。

原文链接:blog.csdn.net/define_LIN/article/d...

本作品采用《CC 协议》,转载必须注明作者和本文链接
放肆疯狂,委婉洒脱。
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!