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高级编程-函数-郑阿奇
Jul 04 PHP
PHP安全配置详细说明
Sep 26 PHP
php实现将任意进制数转换成10进制的方法
Apr 17 PHP
PHP使用socket发送HTTP请求的方法
Feb 14 PHP
php实现背景图上添加圆形logo图标的方法
Nov 17 PHP
laravel5.2实现区分前后台用户登录的方法
Jan 11 PHP
PHP实现用户异地登录提醒功能的方法【基于thinkPHP框架】
Mar 15 PHP
可兼容php5与php7的cURL文件上传功能实例分析
May 11 PHP
PHP中十六进制颜色与RGB颜色值互转的方法
Mar 18 PHP
laravel框架模板之公共模板、继承、包含实现方法分析
Aug 30 PHP
Laravel手动返回错误码示例
Oct 22 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
Laravel框架集成UEditor编辑器的方法图文与实例详解
2019/04/17 PHP
Javascript开发包大全整理
2006/12/22 Javascript
JS处理VBArray的函数使用说明
2008/05/11 Javascript
超级24小时弹窗代码 24小时退出弹窗代码 100%弹窗代码(IE only)
2010/06/11 Javascript
基于jQuery架构javascript基础体系
2011/01/01 Javascript
Jquery实现自定义tooltip示例代码
2014/02/12 Javascript
jQuery实现拖拽效果插件的方法
2015/03/23 Javascript
JavaScript中的Math.LOG2E属性使用详解
2015/06/14 Javascript
基于jQuery实现搜索关键字自动匹配功能
2020/03/26 Javascript
js判断文本框输入的内容是否为数字
2015/12/23 Javascript
JS中多步骤多分步的StepJump组件实例详解
2016/04/01 Javascript
javascript原生ajax写法分享
2016/04/10 Javascript
JavaScript中ES6字符串扩展方法
2016/08/26 Javascript
jQuery焦点图轮播效果实现方法
2016/12/19 Javascript
uni-app如何实现增量更新功能
2020/01/03 Javascript
Python字符串、元组、列表、字典互相转换的方法
2016/01/23 Python
Python自动发邮件脚本
2017/03/31 Python
关于python pyqt5安装失败问题的解决方法
2017/08/08 Python
使用Python通过win32 COM实现Word文档的写入与保存方法
2018/05/08 Python
python实现抖音点赞功能
2019/04/07 Python
使用Python实现企业微信的自动打卡功能
2019/04/30 Python
python爬虫selenium和phantomJs使用方法解析
2019/08/08 Python
大家都说好用的Python命令行库click的使用
2019/11/07 Python
利用Opencv实现图片的油画特效实例
2021/02/28 Python
CSS3中动画属性transform、transition和animation属性的区别
2016/09/25 HTML / CSS
大学生毕业自我鉴定范文
2013/11/03 职场文书
物业管理毕业生的自我评价
2014/02/17 职场文书
运动会通讯稿500字
2014/02/20 职场文书
厨房领班竞聘演讲稿
2014/04/23 职场文书
2014年个人思想工作总结
2014/11/27 职场文书
建筑安全员岗位职责
2015/02/15 职场文书
门球健将观后感
2015/06/16 职场文书
《蟋蟀的住宅》教学反思
2016/02/17 职场文书
应届生个人的求职(自荐信范文2篇)
2019/08/23 职场文书
创业计划书之美甲店
2019/09/20 职场文书
Apache Kafka 分区重分配的实现原理解析
2022/07/15 Servers