使用laravel根据用户类型来显示或隐藏字段


Posted in PHP onOctober 17, 2019

在api开发中,有时候需要对自己以外的其他普通用户隐藏字段,比如隐藏手机号。而对于admin用户,则又不需要隐藏手机号。

所以,需要设计一种能够简单的根据不同用户来显示或隐藏字段的方式。

方法基于laravel实现

use Illuminate\Database\Eloquent\Model;
class User extends Model
{
 /**
  * 重写toArray方法
  */
 public function toArray(){
  //获取api用户
  $me=app(Request::class)->user("api");
  if ($me!=null)
  {
   if ($me instanceof AdminUser)
   {
    //如果是admin用户
    //TODO:使用admin用户的显示规则
   }else if($me instanceof User){
    if ($me->id==$this->id)
    {
     //如果是自己
     //TODO:使用面向自己的显示规则
    }else{
     //如果是其他普通用户
     //TODO:使用面向其他普通用户的显示规则
    }
   }
  }
  return parent::toArray();
 }
}

这样实现后,就不需要针对每一个api去修改规则了

以上这篇使用laravel根据用户类型来显示或隐藏字段就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
wordpress之wp-settings.php
Aug 17 PHP
PHP中include()与require()的区别说明
Mar 10 PHP
PHP 飞信好友免费短信API接口开源版
Jul 22 PHP
php !function_exists("T7FC56270E7A70FA81A5935B72EACBE29"))代码解密
Jan 07 PHP
php 定界符格式引起的错误
May 24 PHP
php缓冲 output_buffering的使用详解
Jun 13 PHP
thinkphp文件处理类Dir.class.php的用法分析
Dec 08 PHP
详解 PHP加密解密字符串函数附源码下载
Dec 18 PHP
PHP控制前台弹出对话框的实现方法
Aug 21 PHP
PHP基于关联数组20行代码搞定约瑟夫问题示例
Nov 07 PHP
源码分析 Laravel 重复执行同一个队列任务的原因
Dec 25 PHP
PHP中迭代器的简单实现及Yii框架中的迭代器实现方法示例
Apr 26 PHP
laravel model模型定义实现开启自动管理时间created_at,updated_at
Oct 17 #PHP
TP5框架请求响应参数实例分析
Oct 17 #PHP
laravel 之 Eloquent 模型修改器和序列化示例
Oct 17 #PHP
laravel model模型处理之修改查询或修改字段时的类型格式案例
Oct 17 #PHP
使用laravel的Eloquent模型如何获取数据库的指定列
Oct 17 #PHP
解决laravel查询构造器中的别名问题
Oct 17 #PHP
Laravel Eloquent ORM 实现查询表中指定的字段
Oct 17 #PHP
You might like
PHP中的CMS的涵义
2007/03/11 PHP
php中http与https跨域共享session的解决方法
2014/12/20 PHP
PHP实现的简单对称加密与解密方法实例小结
2017/08/28 PHP
phpcms实现验证码替换及phpcms实现全站搜索功能教程详解
2017/12/13 PHP
Laravel源码解析之路由的使用和示例详解
2018/09/27 PHP
url 特殊字符 传递参数解决方法
2010/01/01 Javascript
20个非常有用的PHP类库 加速php开发
2010/01/15 Javascript
javascript 定义新对象方法
2010/02/20 Javascript
Tips 带三角可关闭的文字提示
2010/10/06 Javascript
Javascript表达式中连续的 && 和 || 之赋值区别
2010/10/17 Javascript
js 获取radio按钮值的实例
2013/08/17 Javascript
jquery ajax 局部刷新小案例
2014/02/08 Javascript
JS检测输入字符是否包含非法字符的示例代码
2014/02/11 Javascript
深入分析JQuery和JavaScript的异同
2014/10/23 Javascript
cookie的secure属性详解
2015/04/08 Javascript
jQuery对html元素的取值与赋值实例详解
2015/12/18 Javascript
js编写当天简单日历效果【实现代码】
2016/05/03 Javascript
koa上传excel文件并解析的实现方法
2018/08/09 Javascript
如何在Angular应用中创建包含组件方法示例
2019/03/23 Javascript
vue+AI智能机器人回复功能实现
2020/07/16 Javascript
vue中v-model对select的绑定操作
2020/08/31 Javascript
django站点管理详解
2017/12/12 Python
python使用TensorFlow进行图像处理的方法
2018/02/28 Python
Python实用技巧之列表、字典、集合中根据条件筛选数据详解
2018/07/11 Python
使用tensorflow实现线性svm
2018/09/07 Python
解决pycharm运行时interpreter为空的问题
2018/10/29 Python
浅谈如何使用python抓取网页中的动态数据实现
2020/08/17 Python
Aosom西班牙:家具在线商店
2020/06/11 全球购物
声明struct x1 { . . . }; 和typedef struct { . . . }x2;有什么不同
2012/06/02 面试题
销售顾问岗位职责
2014/02/25 职场文书
体育运动会广播稿
2014/10/05 职场文书
领导干部个人整改措施落实情况汇报
2014/10/29 职场文书
平安建设汇报材料
2014/12/29 职场文书
酒店辞职信怎么写
2015/02/27 职场文书
Python基础之教你怎么在M1系统上使用pandas
2021/05/08 Python
SQL Server中锁的用法
2022/05/20 SQL Server