一.路由:

// 常规用法
Route::get('/',function(){
return 'get';
}) // 匹配多个
Route::match(['get','post'],'/',function(){}) Route::any('/',function(){}) // 验证参数
Route::post('/{id}',function($id){
return $id
})->where('id','[0-9]+')

  Laravel中提交方式:GET(查) POST(改) PUT(增) DELETE(删)

  其中PUT和DELETE,本质上就是POST提交且多提交了一个_method参数,参数值为PUT或者DELETE

二.控制器相关

  创建控制器:php artisan make:controller Admin/HomeController

  路由别名:

  

// 方式1:
Route::get('admin/ad_home', ['as' => 'ad_home', 'uses' => 'Admin\HomeController@home']); // 方式2(常用):
Route::get('admin/ad_login/{id}', 'Admin\HomeController@login')->name('ad_login'); route('ad_login',['id'=>1]); // 输出访问的URL

  路由前缀:

//Route::get('admin/ad_home', ['as' => 'ad_home', 'uses' => 'Admin\HomeController@home']);
//Route::get('admin/ad_login/{id}', 'Admin\HomeController@login')->name('ad_login');
//Route::get('admin/ad_logout/{id}', 'Admin\HomeController@logout')->name('ad_logout'); Route::group(
['prefix' => 'admin','namespace'=>'Admin'],
function () {
Route::get('ad_home', ['as' => 'ad_home', 'uses' => 'HomeController@home']);
Route::get('ad_login', 'HomeController@login')->name('ad_login');
Route::get('ad_logout', 'HomeController@logout')->name('ad_logout');
}
);

  查看路由:php artisan route:list

  路由资源:

route::resource('article','ArticleController');

  中间件:

    创建:php artisan make:middleware MyTest

    在kernel.php中的$routeMiddleware属性下面加上'my.test' => \App\Http\Middleware\MyTest::class

    使用:

      

// route.php
Route::get('login', 'HomeController@login'); Route::group(['middleware' => ['web','my.test']], function () { Route::get('home', 'HomeController@home');
Route::get('logout', 'HomeController@logout');
});

  

// \App\Http\Middleware\MyTest\MyTest.php
namespace App\Http\Middleware; use Closure;
use Illuminate\Support\Facades\Redirect; class MyTest
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
if(!session('name'))
{
return redirect('login');
}
return $next($request);
}
}

三.视图传参:1.with 2.传数组 3.compact

        $data = ['name'=>'ht','age'=>999];
$title = 'biaoti'; return view('login',compact('data','title'));

四.模板引擎

  1.模板变量:

    ---@{{ $str }}

    ---{{$has or '不存在'}}

    ---{!! $str !!}

  2.控制流程

    @if @unless @foreach @while @forelse

    

    <div class="content">
@forelse($arr as $k => $v)
@empty
空数组
@endforelse
</div>

  3.模板继承

    ---include('common.header',['title'=>$title])

    ---布局:

      创建布局页面views/layouts/layouts.blade.php:

      

<!DOCTYPE html>
<html>
<body>
<div class="header">头部[{{ $title }}]</div>
{{--yield的效果和下面section+show的效果一样--}}
{{--@yield('content')--}}
@section('content')
我是主模板
@show <div class="footer">尾部</div>
</body>
</html>

      创建具体页面views/index.blade.php:

@extends('layouts.layouts')

@section('content')
{{--@parent用来获取我是主模板--}}
@parent
<div class="content">index内容</div>
@endsection

五. .ENV文件

  生成key:php artisan key:generate

  表前缀

六.模型

  创建model:php artisan make:model Http/Model/Test

  三点:指定表名 指定主键 禁用update_at 和 create_at

      

      

Laravel --- 要点笔记的更多相关文章

  1. Laravel学习笔记(三)--在CentOS上配置Laravel

    在Laravel框架上开发了几天,不得不说,确实比较优雅,处理问题逻辑比较清楚.     今天打算在CentOS 7上配置一个Laravel,之前都是在本机上开发,打算实际配置一下.     1)系统 ...

  2. Laravel学习笔记之Session源码解析(上)

    说明:本文主要通过学习Laravel的session源码学习Laravel是如何设计session的,将自己的学习心得分享出来,希望对别人有所帮助.Laravel在web middleware中定义了 ...

  3. Laravel学习笔记之PHP反射(Reflection) (上)

    Laravel学习笔记之PHP反射(Reflection) (上) laravel php reflect 2.1k 次阅读  ·  读完需要 80 分钟 3 说明:Laravel中经常使用PHP的反 ...

  4. 慕客网laravel学习笔记

    session中set方法使用 Session::set('user.username.age','18')嵌套使用得出$user = ['username'=>['age'=>18]]; ...

  5. laravel安装 笔记

    http://laod.cn/hosts/2015-google-hosts.html 谷歌FQIP laravel安装和设置流程 1安装composer , VirtualBox和Vagrant 下 ...

  6. laravel 学习笔记 — 神奇的服务容器

     2015-05-05 14:24 来自于分类 笔记 Laravel PHP开发 竟然有人认为我是抄 Laravel 学院的,心塞.世界观已崩塌. 容器,字面上理解就是装东西的东西.常见的变量.对象属 ...

  7. laravel安装笔记

    一.安装composer 安装之前将\php\php.ini文件中的php_openssl.dll扩展库开启,否则composer在安装过程中会出现错误提示. (我在安装过程中发现apache目录下的 ...

  8. Laravel学习笔记(五)数据库 数据库迁移案例2——创建数据结构,数据表,修改数据结构

    默认假设 所有的列在定义的时候都有默认的假设,你可以根据需要重写. Laravel假定每个表都有一个数值型的主键(通常命名为”id”),确保新加入的每一行都是唯一的.Laravel只有在每个表都有数值 ...

  9. Laravel学习笔记(四)数据库 数据库迁移案例

    创建迁移 首先,让我们创建一个MySql数据库“Laravel_db”.接下来打开app/config目录下的database.php文件.请确保default键值是mysql: return arr ...

随机推荐

  1. windows mysql5.7 InnoDB 通过frm与ibd对数据进行恢复

    参考:https://www.jianshu.com/p/50a2e13cd5cf 安装MySQL Utilities 下载地址:https://dev.mysql.com/downloads/uti ...

  2. prototype __proto__ Function

    我们创建的每个函数都有一个prototype属性,这个属性是一个指针,指向一个对象.(注意:是函数才有prototype属性) 而__proto__属性每一个对象都有. 在js中如果A对象是由B函数构 ...

  3. PHP中遍历关联数组的方法

    下面介绍PHP中遍历关联数组的三种方法:foreach <?php $sports = array( 'football' => 'good', 'swimming' => 'ver ...

  4. BIOS 选项设置的含义

    SATA Mode Section: ADHI: Advanced Host Controller Interface - this is a hardware mechanism that allo ...

  5. WPF中StringFormat的用法--显示特定位数的数字

    原文:WPF中StringFormat的用法--显示特定位数的数字 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/huangli321456/art ...

  6. centos6.5安装apache2.x并更改默认80port

    因为现在nginx它已成为反向代理软件的主流.因此,linuxserver在系统.我们几乎总是安装nginx东方的,这使在同一时间使用apache带来了麻烦.因为apache它用于通过缺省80port ...

  7. HDU4421 Bit Magic 【2-sat】

    叙述性说明: 这给出了一个矩阵,原来的请求a排列 2-sat称号.对于每一位跑步边,跑31位可 详细的施工方 注意N=1的情况特判,还有检查对称元素是否同样 #include <stdio.h& ...

  8. WCF SOAP用法

    基本思路 1.新建一个WCF服务库2.在客户端引用处右键,添加服务引用   点击发现,选择目标服务设置好命名空间   可以在高级一栏里面,设置详细信息   点击确认,添加服务引用 3.在客户端自动生成 ...

  9. MultiBinding

    <StackPanel> <Slider x:Name="sl1" Minimum="10" Maximum="100"/ ...

  10. XF内容视图和框架

    <?xml version="1.0" encoding="utf-8" ?> <ContentPage xmlns="http:/ ...