index.php 入口文件
- 15行 thinkphp自带的 加载项目中的第三方库
- 17行 是声明常量 用于表示操作系统中目录分隔符(常量名是系统中早就定义好的)
- 18到21行 用于检查是否已经安装某个项目,如果没有安装将重定向到安装页面
- 其他的就是tp自带的了
所用函数
DIR:
DIRECTORY_SEPARATOR:
file_exists():
strpos()
$_SERVER['REQUEST_URI']:
header():
登录
一体开发流程:
- 获取参数
- 验证参数
- 验证验证码
- 根据账号查找管理员数据
- 如果为空则没有此用户
- 判断密码是否正确以及状态
- 判断是否为超级管理员
- 如果不是则根据管理员信息中的role_id查找管理员角色信息
- 然后根据管理员信息中的权限字段(role_node)去用whereIn查找,在管理员角色权限中的权限
- 用foreach循环将数组中所需要的字段提取出来,形成新的数组
- 然后生成子孙树
- 如果是超级管理员那么直接查找所有权限形成子孙树
- 记录程序所需要的登陆信息
- 将要用的数据存入session
- 登陆成功
前后端分离可能会有差别,但差别不大