laravel 5.2 学习笔记

1.检查数据库连接是否成功。

$pdo = DB::connection()->getPdo();
dd($pdo);

2.调用特定目录下的控制器

Route::get('admin/login','Admin\LoginController@login');

3.创建控制器

php artisan make:controller LoginController

4.引入css文件

4.1带域名

<link rel="stylesheet" href="{{asset('resources/views/admin/style/css/ch-ui.admin.css')}}">

4.2不带域名

<link rel="stylesheet" href="/resources/views/admin/style/css/ch-ui.admin.css">

5.常用的路由语句

5-1.路由到方法

Route::get('foo', function () {
    return 'Hello World';
});

5-2.路由到控制器

Route::get('foo', 'IndexController@index');

5-3.路由到数组

Route::get('user/profile', ['as' => 'profile', function () {
    //
}]);

Route::get('user/profile', [
    'as' => 'profile', 'uses' => 'UserController@showProfile'
]);

6.引入扩展在实例化时应该从底层开始查找

$code = new \Code;
$code->make();

7.继承基础类,首先要使用use

use \App\Http\Controllers\Controller

8.引入扩展

require_once('resources\org\code\Code.class.php');

9.laravel默认没有开启原生的session,要使用需要在调用之前打开

session_start();

10.url方法生成一个完整的链接,asset方法用于引用资源

11.使用Input之前要先用use引用对应的class

use Illuminate\Support\Facades\Input;

12.使用web中间件,就必须在表单中插入防止csrf攻击的代码段

{{csrf_field()}}

13.点击验证码刷新

<img src="{{url('/admin/passport/makecode')}}" alt="" onclick="this.src='{{url('/admin/passport/makecode')}}?'+Math.random()">

14.返回上一个参数并带有提示信息

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

15.判断并获取back过来的参数

@if(session('msg'))
    <p style="color:red">{{session('msg')}}</p>
@endif

16.引入Crypt

use Illuminate\Support\Facades\Crypt;
Crypt::encrypt($str);
Crypt::decrypt($pass);

17.创建模型

php artisan make:model Admin

18.把model文件拖到App\Http\Model目录后,需要修改对应的命名空间,要使用这个模型,也需要在控制器中use

namespace App\Http\Model;
use \App\Http\Model\Admin;

19.在一个模型中,需要自己指定表的名字和主键等等

protected $table = 'admin';
protected $primaryKey = 'id';
public $timestamps = false;

20.模型的返回值是一个对象,可以通过->调用对应的字段,而不是数组

$data = Admin::first();
dd($data->username);

21.使用session同样需要先引入

use Illuminate\Support\Facades\Session;
Session::put('uid',$admininfo->id);
Session::get('uid');

22.也可以直接用小写的

session(['uid'=>$admininfo->id]);
session('uid');

23.php获取操作系统的基本信息

服务器操作系统: <?PHP echo PHP_OS; ?> 
运行环境: <?PHP echo $_SERVER ['SERVER_SOFTWARE']; ?> 
最大上传限制: <?PHP echo get_cfg_var ("upload_max_filesize")?get_cfg_var ("upload_max_filesize"):"不允许上传附件"; ?> 
最大执行时间: <?PHP echo get_cfg_var("max_execution_time")."秒 "; ?> 
脚本运行占用最大内存: <?PHP echo get_cfg_var ("memory_limit")?get_cfg_var("memory_limit"):"无" ?>
PHP程式版本: <?PHP echo PHP_VERSION; ?> 
ZEND版本: <?PHP echo zend_version(); ?> 
MySQL支持: <?php echo function_exists (mysql_close)?"是":"否"; ?>
MySQL数据库持续连接 :<?php echo @get_cfg_var("mysql.allow_persistent")?"是 ":"否"; ?> 
MySQL最大连接数:<?php echo @get_cfg_var("mysql.max_links")==-1 ? "不限" : @get_cfg_var("mysql.max_links");?>
获得服务器系统时间<?php date_default_timezone_set ('PRC'); echo date("Y-m-d G:i:s"); ?>

24.修改时区在config/app.php中修改

'timezone' => 'PRC',

25.感觉放在.env中的配置信息可以被直接访问到,非常不安全,一般把配置信息放config目录下比较好

26.子视图布局

26-1.在模版中使用关键字占位符

@yield('content')

26-2.在视图中使用关键字绑定模版与内容

@extends('layouts/admin')
@section('content')
    <p>哈哈哈</p>
@endsection

27.在控制器内实现跳转

return redirect('admin/index/index');

28.在使用中间件的时候需要在kernel.php中挂载

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

29.创建中间件

artisan make:middleware AdminLogin

30.自定义中间件

在中间件的handle方法中写预先要执行的操作就行,相当于tp的预处理函数

31.可以在路由组中配置namespace,这样路由前缀就可以去掉啦

32.引入Validator

use Illuminate\Support\Facades\Validator;

33.Validator的使用

33-1.配置rules

$rules = ['password'=>'required'];

33-2.绑定rules和需要验证的数据,生成一个$v对象

$v = Validator::make($data,$rules);

33-3.判断是否通过验证

$v->passes();

33-4.没有通过就获取错误信息

$v->errors()->all();

34.自定义 错误提示信息

34-1.配置rules

$rules = ['password'=>'required'];

34-2.配置msg

$msgs = ['password.required'=>'原密码不能为空'];

34-3.验证

$v = Validator::make($data,$rules,$msgs);

35.常用的验证条件

35-1.验证字段不能为空,长度在指定范围,确认输入

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

35-2.确认输入的表单里面的name也使用指定的

 <input type="password" name="password"> </i>新密码6-20位</span>
 <input type="password" name="password_confirmation">  </i>再次输入密码</span>

36.对于验证,laravel5.2有专门处理错误信息的

36-1.在后台用类似with的方法,返回错误对象

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

36-2.前台用if和for循环输出

 @if(count($errors)>0) 
    <div class="mark">
        @foreach($errors->all() as $error)
            <p>{{$error}}</p>
        @endforeach
    </div>      
@endif

37.验证成功,更新数据

$admininfo->password = Crypt::encrypt($data['password']);
$admininfo->update();

38.使用资源路由

Route::resource('/admin/category','CategoryController');

39.列出所有路由条目

php artisan route:list 

40.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值