• ThinkPHP3(命名空间、RBAC)


    命名空间

    当开发大型项目的时候,可以会需要成千上万的文件

    面向对象通过命名空间来解决这个问题的。

    PHP命名空间是PHP5.3以后才出现的。

    命名空间中可以出现:类,函数,常量

    只有const定义的常量命名空间才有效。命名空间的名字必须符合PHP命名的规则。

    命名空间是逻辑上的定义,逻辑的名称 不是物理上的路径

    Tp中为了寻址的方便把命名空间做成地址

    命名空间的声明和使用(namespace1.php)

    命名空间的多级访问一(namespace2.php)

    命名空间的多级访问二(namespace3.php)

    空间元素访问的三种形式

    1、非限定名称访问

    echo  getInfo()

    类似于:require  ('getinfo.php');

    2、限定名称访问,是相对限定

    ChinagetInfo();

    类似于:requrie ('China/getInfo.php');

    3、完全限定访问

    ChinagetInfo();

    类似于  requre ('c:Chinagetinfo.php');

    引用命名空间(namespace4.php)

    命名空间的注意事项:

    1、最顶层的表示的是公共空间

    2namespace必须在最上面。

    3、命名是虚拟的空间,不是真实存在的目录,但是ThinkPHP的命名空间是真实的地址路径。

    4、当前文件中include具有命名空间的文件,不会改变当前文件的命名空间。

    5use有两个作用 引入命名空间  引入类

    一.RBAC

    1. 介绍

    RBAC: role  base access  controller (基于角色的访问控制功能)

    权限控制器第一个阶段:

    该权限控制器是用户与具体操作模块直接联系。

    该方式权限设置好处:实现相对比较容易、用户的权限非常清晰。

                  不好:权限设置“太具体”,管理员需要每天花大量的时间给“新增用户”设置权限,给“离职用户”取消权限。有时还需要给个别人员设置差异权限。

    权限设置第二个阶段:

    权限可以与组别直接对应

    管理员-------->---------->权限

    基于组(角色)的权限设置,使得用户与组别直接联系、组别与权限直接对应

    组别对应的具体的权限已经固化的信息

    用户与组别的对应关系是动态的,需要管理员维护

    该方式权限设置非常高效,管理员后期只需要知道用户是属于哪个组别的就可以。

    2. 数据表设计

    3. 管理员根据自己角色显示对应权限

    4. admin超级管理员开放全部权限

  • 相关阅读:
    AutoCAD如何添加网络打印机 添加公司打印机
    AutoCAD如何方便截图放到Word文档,改成白底黑字
    AutoCAD如何倒角 倒圆角 倒直角
    [RxJS] Groupby operator
    [VSCode] Custom settings
    [TypeScript] Modifier
    [Javascript] Avoid Accidental Returns of New State by using the void Keyword
    动态创建选项卡
    eclipse运行内存不足解决办法
    使用jquery trigger 触发a标签的click事件取代window.open方法
  • 原文地址:https://www.cnblogs.com/ybygb-geng/p/10007582.html
Copyright © 2020-2023  润新知