evn文件(在根目录中)
env(name,默认值);//读取env配置 config("database.connection.mysql");//读取配置项,database文件下的connection数组的mysql
config()操作的主要再根目录下的config文件夹的配置文件
@yield(name) 标识位置
或
@section(name)
可以有内容
@show()
@extends(模板文件)
@section(name)
调用父视图的原来内容
插入标识地方的内容
@endsection 子视图使用
引入子视图
@include("common.header") ##common下的header.blade.php
第二个参数可以传参数['name'=>...]
@if(条件)
内容
@else
@endif
@foreach(数组 as $v)
@endforeach()
@unless() 除非
@endunless
@for($i=0;$i<10;$i++)
@endfor
@forelse(数组 as $v)
@empty 没有数据
@endforelse
@while()
@endwhile()
模板中使用分配的变量
{{$name}} 两个{}
@{{$name}} 屏蔽解析
{{$name or "默认值"}}
{{isset($name)?$name:"}}
这些分配的变量,特殊符号会被转义成实体,用
{!! $str !!}则不会转义,输出js代码有用
分配视图用view(文件名前缀)
视图存放在resource/views下,命名规则为 名字.blade.php
//传参数 view()->with('name',"名字")->with(...);//可以链式调用 view()->withErrors(错误数组);//这样可以直接赋值错误给$errors中。 view()->withSuccess('正确信息');//这个传到了session的$success中 view(模板,数组传参); view(模板,compact(变量名字符串,....));//联合变量输出
中间件Middleware是在路由之前访问的
可以用来验证一个需要登陆后才能访问的路由组,有没有登录等
要使用session和csrf保护功能,必须先经过web这个中间件
路由命名简单版
Route::get('/login','控制器@方法')->name('命名')
命名之后可以通过route函数转换为url
Controllers下分模块(文件夹)
首先改命名空间,引入继承的Controller,修改路由加多一层模块(文件夹),
"目录\控制器@方法"
Route::get('test','Admin\SomeController@hello');
其实最好的办法就是用artisan命令
php artisan make:controller 模块名/控制器名