码迷,mamicode.com
首页 > 其他好文 > 详细

laravel 模型观察器

时间:2019-06-19 12:22:21      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:tor   creating   情况   updating   created   php   strong   service   token   

模型观察器

  • 对模型的生命周期内的多个时间点进行监控,分别有 ~ing 和 ~ed 事件
  • 每个监控方法接收 model 作为唯一参数

使用观察器

  • 创建观察器文件,一个普通类,不需要继承什么
  • 针对需要的事件,编写对应的 ~ing 或 ~ed 方法,方法接收 model 作为唯一参数
  • 在 AppServiceProvider 中注册

    // 在 boot 方法中
    
    YourModel::observe(YourModelObserver::class);

例子:需求,话题内容添加时提取话题的摘录

excerpt 字段存储的是话题的摘录

当一个新模型被初次保存将会触发 creating 以及 created 事件。如果一个模型已经存在于数据库且调用了 save 方法,将会触发 updating 和 updated 事件。在这两种情况下都会触发 saving 和 saved 事件。

在 AppServiceProvider 中注册

技术图片

观察器:

技术图片

app/helpers.php

function make_excerpt($value, $length = 200)
{
    $excerpt = trim(preg_replace(‘/\r\n|\r|\n+/‘, ‘ ‘, strip_tags($value)));
    return str_limit($excerpt, $length);
}

也可以直接这样用:
技术图片

 

https://learnku.com/articles/6657/model-events-and-observer-in-laravel



laravel 模型观察器

标签:tor   creating   情况   updating   created   php   strong   service   token   

原文地址:https://www.cnblogs.com/sgm4231/p/11050391.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!