网站首页 > 技术文章 正文
以下内容仅为核心流程讲解。
新建数据表并自动完善up和down的users方法。
php artisan make:migration create_table_users --create=users
route建立
app/http/route.php
访问路径和内容的定义
执行实例化方法:
Route::any('api/user',function()
{
$user = new App\User;
return $user->signup();
});
注意:app/providers/AppServiceProvider.php 里可以注册作为工具的函数,然后在controller、model中调用。
model建立
php artisan make:model User
自动建立app/User.php
一般一个model就对应一张表,用App\User就能实例化。
注册方法建立
在php文件中User类中新增signup方法
use Request;
public function signup()
{
//dd(Request::all());
return 'signup!!';
}
注意:调试可以使用dd()函数;
加密数据库bcrypt($password)
//判断数据库中是否存在该账户
$user_exists = $this ->where('username',$username)->exists();
//写入数据库
$user=$this;
$user->username=$username;
$user->password=$password;
if($user->save()){ return ['status'=>1 , 'id'=>$user->id]; }
登录方法建立
在php文件中User类中新增login方法
//判断用户名是否正确
$user=$this->where('username',$username)->first();
$hash_password=$user->password;
if (!Hash::check($password,$hash_password))
return ['status'=>0,'msg'=>'密码有误'];
注意:config/session.php可配置session
然后login方法继续添加
session()->put('user_id',$user->id);
session()->put('username',$user->username);
//dd(session()->all);
return ['status'=>1,'user_id'=>$user->id];
登出方法
//判断是否登录
public function is_logged_in()
{
return session('user_id')?:false;
}
//退出,主要对session操作
public function loginout()
{
session()->put('user_id',null);//赋值为null了
session()->forget('username');//扔掉了,常用
$username=session()->pull('username');//剪切了
//session()->flush();
}
一般系统都将session写成数组形式,嵌套可多层。
session()->set('persion.name','学点干货')
猜你喜欢
- 2024-09-15 laravel 使用 mongodb(laravel 使用gmail邮箱发送验证码)
- 2024-09-15 Laravel的这10个用法,你都没用过吧
- 2024-09-15 PHP Laravel框架用户权限管理,按钮级别控制(详细)
- 2024-09-15 3分钟短文:太爽了,用Laravel写API接口
- 2024-09-15 Laravel5.8简明教程(laravel-admin)
- 2024-09-15 3分钟短文:Laravel请求对象方法极多,可不是花拳绣腿
- 2024-09-15 Laravel 5中如何添加Form功能(laravel 伪静态)
- 2024-09-15 告别 $arr[0]: PHP 和 Laravel 中更优雅的数组处理方式
- 2024-09-15 Laravel + Serverless Framework 快速创建 CMS 内容管理系统
- 2024-09-15 3分钟短文:Laravel模型创建数据条目的2个语法糖
- 1512℃桌面软件开发新体验!用 Blazor Hybrid 打造简洁高效的视频处理工具
- 556℃Dify工具使用全场景:dify-sandbox沙盒的原理(源码篇·第2期)
- 504℃MySQL service启动脚本浅析(r12笔记第59天)
- 482℃服务器异常重启,导致mysql启动失败,问题解决过程记录
- 481℃启用MySQL查询缓存(mysql8.0查询缓存)
- 461℃「赵强老师」MySQL的闪回(赵强iso是哪个大学毕业的)
- 441℃mysql服务怎么启动和关闭?(mysql服务怎么启动和关闭)
- 438℃MySQL server PID file could not be found!失败
- 最近发表
- 标签列表
-
- c++中::是什么意思 (83)
- 标签用于 (65)
- 主键只能有一个吗 (66)
- c#console.writeline不显示 (75)
- pythoncase语句 (81)
- es6includes (73)
- windowsscripthost (67)
- apt-getinstall-y (86)
- node_modules怎么生成 (76)
- c++int转char (75)
- static函数和普通函数 (76)
- el-date-picker开始日期早于结束日期 (70)
- js判断是否是json字符串 (67)
- checkout-b (67)
- c语言min函数头文件 (68)
- asynccallback (71)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- & (66)
- java (73)
- js数组插入 (83)
- mac安装java (72)
- eacces (67)
- 查看mysql是否启动 (70)
- 无效的列索引 (74)