基础知识速记

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 16:58   1516   0

=>

一般用于数组的 键=>值

->

一般用于对象的 对象->对象属性 和 对象->对象方法

===是包括变量值与类型完全相等,而==只是比较两个数的值是否相等。

第一次见到这种表现方式,请问是双冒号什么意思

lazycms::$sysname

直接属类的方法或属性。

也就是static 静态方法或属性的使用。

域运算符,一般用于在B类对象中使用A类对象的属性/方法!

命名控制器路由

Route::get(‘foo’,[‘uses’=>’FooController@method’,’as’=>’name’]);

构造器注入

Laravel使用服务容器来解析控制器的依赖注入。以来会自动被解析并注入控制器实例中

Class UserController extends Controller{

Protected $users

Public function __construct(UserRepository $users)

{

$this->user=$users;

}

}

方法注入:

除了构造器注入外,也可以对控制器行为方法的依赖使用类型提示。

Calss UserController extends Controller

{

Public function store(Request $request)

{

$name=$request->input(‘name’);

}

}

添加session信息:

session([‘user’=>$user]);

判断session是否存在:
session('user');

清空session

session('user'=>null);

页面链接

{{url('admin/login')}}

页面跳转:

return redirect('admin/login');

返回上一页面并传参:

return back()->with('msg','用户名或密码错误');

页面显示传来的参数:

@if(session('msg'))

<p>session('msg')</p>

@endif

中间件(登陆验证)

配置路由

Route::group(['middleware'=>['web','admin.login']],function(){

Route::get('admin/index','Admin\IndexController@index';)

})

配置Kernel.php

protected $routeMiddleware=[

'admin.login'=>\App\Http\MIddleware\AdminLogin::class,

];

编写控制器

public function login(){

if($input = Input::all()){

$code = new \Code;

$_code = $code->get();

if(strtoupper9$input['code'])!=$_code){

return back()->with('msg','验证码错误!');

}

$user=User::first();

if($user->user_name!=$input['user_name']||Crypt::decrypt($user->user_pass)!=input['user_pass']){

return back()->with('msg','用户名或密码错误');

}

session(['user'=>$user]);

return redirect('admin/index');

}

}

实现修改密码:

配置路由Route::any('admin/pass','Admin/IndexController@pass');

编辑控制方法:

public function pass(){

if($input=Input::all()){

$validator = Validator::make($input,$rules,$message);

$rules=['password'=>'required|between:6,20|confired',];

$message=[

'password.required'=>'新密码不能为空',

'password.between'=>'新密码必须在6-20位之间',

'password.confirmed'=>'新密码和确认密码不一致'‘

];

if($vaildator->passes()){

$user = User::first();

$_password=Crypt::decrypt($user->user_pass);

if($input['password_o']==$_password){

$user->user_pass=Crypt::encrypt($input['password']);

$user->update();

return back()->with('errors','密码修改成功');

}else{

return back()->with('errors',’密码修改成功‘);

}else{

return back()->with('errors',’原密码错误‘);

}else{

return back()->withErrors($vaildator);

}

}

else{

return view('admin.pass');

}

}

密码修改页所需修改的代码片段

@if(count($errors)>0)

@if(is_object($errors))

@foreach($errors->all() as $error)

<p>{{$error}}</p>

@endforeach

@else

<p>{{$errors}}</p>

@endif

@endif

查看路由列表命令

php artisan route: list

新建控制器命令

php artisan make:controller AdminCOntroller

树形结构:

public function getTree($data){

$arr =array();

foreach($data as $k=>$v){

if($v->cate_pid==0){

$data[$k]["_cate_name"]=$data[$k]["cate_name"];

$arr[]=$data[$k];

foreach($data as $m=>$n){

if($n->cate_pid==$v->cate_id)

$data[$m]["_cate_name"]=$data[$m]["__cate_name"];

$arr[]=$data[$m];

}

}

}

}

转载于:https://my.oschina.net/u/3304754/blog/860440

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP