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实现小型站点广告管理
Oct 09 PHP
php中截取字符串支持utf-8
Jan 18 PHP
php实现mysql数据库备份类
Mar 20 PHP
CakePHP去除默认显示的标题及图标的方法
Oct 22 PHP
PHP 使用header函数设置HTTP头的示例解析 表头
Jun 17 PHP
javascript数组与php数组的地址传递及值传递用法实例
Jan 22 PHP
PHP 数据结构队列(SplQueue)和优先队列(SplPriorityQueue)简单使用实例
May 12 PHP
PHP输出图像imagegif、imagejpeg与imagepng函数用法分析
Nov 14 PHP
浅谈socket同步和异步、阻塞和非阻塞、I/O模型
Dec 15 PHP
PHP 7.1新特性的汇总介绍
Dec 16 PHP
利用PHP_XLSXWriter代替PHPExcel的方法示例
Jul 16 PHP
PHP获取本周所有日期或者最近七天所有日期的方法
Jun 20 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
在PWS上安装PHP4.0正式版
2006/10/09 PHP
一篇有意思的技术文章php介绍篇
2010/10/26 PHP
PHP 修复未正常关闭的HTML标签实现代码(支持嵌套和就近闭合)
2012/06/07 PHP
php强制运行广告的方法
2014/12/01 PHP
深入剖析PHP中printf()函数格式化使用
2016/05/23 PHP
thinkPHP5框架设置404、403等http状态页面的方法
2018/06/05 PHP
Javascript中的常见排序算法
2007/03/27 Javascript
node.js使用nodemailer发送邮件实例
2014/03/10 Javascript
让alert不出现弹窗的两种方法
2014/05/18 Javascript
javascript学习笔记(四)function函数部分
2014/09/30 Javascript
jquery队列函数用法实例
2014/12/16 Javascript
使用jQuery管理选择结果
2015/01/20 Javascript
JavaScript操作Cookie详解
2015/02/28 Javascript
高性能JavaScript DOM编程(1)
2015/08/11 Javascript
AngularJS入门教程之表格实例详解
2016/07/27 Javascript
Nodejs中crypto模块的安全知识讲解
2018/01/03 NodeJs
微信小程序的线程架构【推荐】
2019/05/14 Javascript
原生JavaScript创建不可变对象的方法简单示例
2020/05/07 Javascript
vue使用vue-quill-editor富文本编辑器且将图片上传到服务器的功能
2021/01/13 Vue.js
Python3.6简单操作Mysql数据库
2017/09/12 Python
python 项目目录结构设置
2020/02/14 Python
Python各种扩展名区别点整理
2020/02/27 Python
使用python的turtle函数绘制一个滑稽表情
2020/02/28 Python
Python3爬虫中Splash的知识总结
2020/07/10 Python
Nike英国官网:Nike.com (UK)
2017/02/13 全球购物
美国最值得信赖的宠物药房:Allivet
2019/03/23 全球购物
中学生纪念九一八事变演讲稿
2014/09/14 职场文书
法人单位适用的授权委托书
2014/09/19 职场文书
运动会铅球比赛加油稿
2014/09/26 职场文书
开展批评与自我批评发言稿
2014/10/16 职场文书
邀请函格式范文
2015/02/02 职场文书
文艺演出主持词
2015/07/01 职场文书
python通过opencv调用摄像头操作实例分析
2021/06/07 Python
Vue操作Storage本地化存储
2022/04/29 Vue.js
使用CSS实现黑白格背景效果
2022/06/01 HTML / CSS
JavaScript实现一键复制内容剪贴板
2022/07/23 Javascript