首页 技术 正文
技术 2022年11月19日
0 收藏 1000 点赞 3,889 浏览 980 个字

命名空间

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

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

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

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

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

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

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

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

ThinkPHP3(命名空间、RBAC)

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

ThinkPHP3(命名空间、RBAC)

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

ThinkPHP3(命名空间、RBAC)

空间元素访问的三种形式

1、非限定名称访问

echo  getInfo()

类似于:require  (‘getinfo.php’);

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

China\getInfo();

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

3、完全限定访问

\China\getInfo();

类似于  requre (‘c:\China\getinfo.php’);

引用命名空间(namespace4.php)

ThinkPHP3(命名空间、RBAC)

命名空间的注意事项:

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

2、namespace必须在最上面。

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

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

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

一.RBAC

1. 介绍

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

ThinkPHP3(命名空间、RBAC)

权限控制器第一个阶段:

ThinkPHP3(命名空间、RBAC)

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

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

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

权限设置第二个阶段:

权限可以与组别直接对应

管理员——–>组———->权限

ThinkPHP3(命名空间、RBAC)

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

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

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

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

2. 数据表设计

ThinkPHP3(命名空间、RBAC)

ThinkPHP3(命名空间、RBAC)

ThinkPHP3(命名空间、RBAC)

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

ThinkPHP3(命名空间、RBAC)

ThinkPHP3(命名空间、RBAC)

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

ThinkPHP3(命名空间、RBAC)

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,023
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,513
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,361
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,143
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,774
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,853