laravel中firstorcreate和updateorcreate的操作区分

Posted willem_chen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了laravel中firstorcreate和updateorcreate的操作区分相关的知识,希望对你有一定的参考价值。

laravel中firstorcreate和updateorcreate的操作区分

firstorcreate

Model::firstorcreate(param1, param2)中的,第一个参数是条件。第二个是需要操作的数据。

操作顺序是:

1、先尝试查询该条件下的记录。

2、如果记录不存在则进行存储,存储完成后,返回该记录模型。

updateorcreate

Model::updateorcreate(param1, param2)中的,第一个参数是条件。第二个是需要操作的数据。

操作顺序是:

1、先尝试查询该条件下的记录。

2、如果记录存在则进行记录的更新操作,不存在的话执行存储操作,然后返回该记录模型。

如果你想知道上面的操作执行是:

第1个操作
还是第2个操作

可以获取操作完成模型的wasRecentlyCreated属性,如果属性值是true表示执行的是第二个操作,否则就是第一次操作。

测试

在这里插入图片描述
数据不存在返回:true
在这里插入图片描述
数据存在返回:false
在这里插入图片描述

以上是关于laravel中firstorcreate和updateorcreate的操作区分的主要内容,如果未能解决你的问题,请参考以下文章