Laravel 手动开关 Eloquent 修改器的操作方法


Posted in PHP onDecember 30, 2019

测试框架版本是 Laravel 6.5, Eloquent 修改器使用可以参阅 -> 查看文档

修改器的手动开关的场景就是差异化的返回数据,例如在后台管理的时候,图片地址要相对路径,然后 app 端期望返回全路径的地址,这个时候就需要手动开启和关闭了。

大概操作就是在模型中声明一个静态变量,然后修改器中判断这个静态变量值是 true/false; 如果是 true 则处理,如果为 false 就不处理,具体操作:

public static $modify = true;
  /**
   * 获取用户的姓名.
   * 判断是否需要修改及 $value 是不是空值
   * @param string $value
   * @return string
   */
  public function getFirstNameAttribute($value)
  {
    return self::$modify && $value ? ucfirst($value) : $value;
  }

示例代码是默认开启修改器的,无需的话可以关闭修改器,在具体业务层使用前关闭就可以的

User::$modify = false;  // 关闭修改器
return $user:findOrFail(1);

如果不手动关闭,想获取原数据,而不是被修改之后的值,也可以这样获取原始值:

$user = User::find(1);
return $user->getOriginal('first_name');

总结

以上所述是小编给大家介绍的Laravel 手动开关 Eloquent 修改器的操作方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

PHP 相关文章推荐
php 启动报错如何解决
Jan 17 PHP
PHP中几个可以提高运行效率的代码写法、技巧分享
Aug 21 PHP
Drupal简体中文语言包安装教程
Sep 27 PHP
php运行提示:Fatal error Allowed memory size内存不足的解决方法
Dec 17 PHP
php中session与cookie的比较
Jan 27 PHP
ThinkPHP路由详解
Jul 27 PHP
变量在 PHP7 内部的实现(二)
Dec 21 PHP
PHP编程入门的基本语法知识点总结
Jan 26 PHP
php将print_r处理后的数据还原为原始数组的解决方法
Nov 02 PHP
PHP实现数据库的增删查改功能及完整代码
Apr 18 PHP
PHP htmlspecialchars()函数用法与实例讲解
Mar 08 PHP
PHP中通过getopt解析GNU C风格命令行选项
Nov 18 PHP
Laravel 集成微信用户登录和绑定的实现
Dec 27 #PHP
PHP单元测试配置与使用方法详解
Dec 27 #PHP
PHP全局使用Laravel辅助函数dd
Dec 26 #PHP
解决php用mysql方式连接数据库出现Deprecated报错问题
Dec 25 #PHP
PHP高并发和大流量解决方案整理
Dec 24 #PHP
thinkphp5实现微信扫码支付
Dec 23 #PHP
PHP实现笛卡尔积算法的实例讲解
Dec 22 #PHP
You might like
php 数组的指针操作实现代码
2011/02/08 PHP
ecshop 批量上传(加入自定义属性)
2012/03/20 PHP
PHP中替换换行符的几种方法小结
2012/10/15 PHP
百度工程师讲PHP函数的实现原理及性能分析(三)
2015/05/13 PHP
PHP生成随机密码方法汇总
2015/08/27 PHP
PHP给文字内容中的关键字进行套红处理
2016/04/12 PHP
浅谈PHP的反射机制
2016/12/15 PHP
用Javascript做flash做的事..才完成的一个类.Auntion Action var 0.1
2007/02/23 Javascript
JavaScript 入门基础知识 想学习js的朋友可以参考下
2009/12/26 Javascript
Document:getElementsByName()使用方法及示例
2013/10/28 Javascript
如何将网页表格内容导入excel
2014/02/18 Javascript
详解JavaScript中双等号引起的隐性类型转换
2016/05/30 Javascript
简单实现jquery焦点图
2016/12/12 Javascript
浅析Vue实例以及生命周期
2018/08/14 Javascript
详解nodejs 开发企业微信第三方应用入门教程
2019/03/12 NodeJs
layui table动态表头 改变表格头部 重新加载表格的方法
2019/09/21 Javascript
vue-router 中 meta的用法详解
2019/11/01 Javascript
Vue用mixin合并重复代码的实现
2020/11/27 Vue.js
[05:59]2018DOTA2国际邀请赛寻真——只为胜利的Secret
2018/08/13 DOTA
使用Python操作Elasticsearch数据索引的教程
2015/04/08 Python
Python中字符串对齐方法介绍
2015/05/21 Python
python开发之thread实现布朗运动的方法
2015/11/11 Python
Python编程中使用Pillow来处理图像的基础教程
2015/11/20 Python
Python实现TCP/IP协议下的端口转发及重定向示例
2016/06/14 Python
python实现分页效果
2017/10/25 Python
详解python中__name__的意义以及作用
2019/08/07 Python
Python函数式编程指南:对生成器全面讲解
2019/11/19 Python
python数据库编程 ODBC方式实现通讯录
2020/03/27 Python
HTML5 Video标签的属性、方法和事件汇总介绍
2015/04/24 HTML / CSS
中国跨境海淘网站:考拉海购
2016/08/01 全球购物
英国剑桥包中文官网:The Cambridge Satchel Company中国
2018/11/06 全球购物
房地产广告策划方案
2014/05/15 职场文书
高中生国庆节演讲稿范文2014
2014/09/21 职场文书
2014年机关党建工作总结
2014/11/11 职场文书
写景作文评语集锦
2014/12/25 职场文书
Python 中 Shutil 模块详情
2021/11/11 Python