我们专注攀枝花网站设计 攀枝花网站制作 攀枝花网站建设
成都网站建设公司服务热线:400-028-6601

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

Laravel中isDirty()和wasChanged()有什么区别

这篇“Laravel中isDirty()和wasChanged()有什么区别”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Laravel中isDirty()和wasChanged()有什么区别”文章吧。

企业建站必须是能够以充分展现企业形象为主要目的,是企业文化与产品对外扩展宣传的重要窗口,一个合格的网站不仅仅能为公司带来巨大的互联网上的收集和信息发布平台,创新互联面向各种领域:高空作业车租赁成都网站设计成都营销网站建设解决方案、网站设计等建站排名服务。


Laravel 数据模型中 `isDirty()` 和 `wasChanged()` 有区别吗?

答案:是有区别的。

isDirty 函数的代码如下:

/**
 * 判断模型或者任意指定模型属性是否被修改过
 *
 * @param  array|string|null  $attributes
 * @return bool
 */public function isDirty($attributes = null){
    return $this->hasChanges(
        $this->getDirty(), is_array($attributes) ? $attributes : func_get_args()
    );}

getChanges() 和 getDirty() 函数的代码如下

/**
 * 获取自从最后一次同步以来,被修改的属性值
 *
 * @return array
 */public function getDirty(){
    $dirty = [];
    foreach ($this->getAttributes() as $key => $value) {
        if (! $this->originalIsEquivalent($key, $value)) {
            $dirty[$key] = $value;
        }
    }
    return $dirty;}/**
 * 获取所有已经被修改的属性.
 *
 * @return array
 */public function getChanges(){
    return $this->changes;}

简而言之.

isDirty (and getDirty) 用在保存前置执行, 查看哪些属性在从数据库检索到调用之间被修改过, 而 wasChanged (and getChanges)是保存后置执行,查看属性是否在上次保存中(从代码到数据库)被修改或者更新.

以上就是关于“Laravel中isDirty()和wasChanged()有什么区别”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注创新互联行业资讯频道。


分享名称:Laravel中isDirty()和wasChanged()有什么区别
路径分享:http://shouzuofang.com/article/jcidei.html

其他资讯