1. 简介

    web开发框架 mvc的开发模式    路由解析     数据库     缓存     会话     文件上传  
  2. 版本的选择

    5.1版本
  3. mvc

    model 获取服务器资源的封装control 解析参数 处理数据 响应数据view 展示数据
  4. 开发环境

    下载mamp 
  5. 安装

    官网直接下载源代码composer安装
  6. 核心目录的介绍

    app //业务代码bootstrap //自动加载目录config //配置文件database //数据库文件public //入口文件resources //模版文件storage //缓存日志文件vender //框架核心文件tests //单元测试文件
  7. 路由

    • 路由简介
    将用户的请求转发给相应的控制器(应用程序)建立url和程序之间的映射get post put
    • 基本路由
    //getRoute::get('/', function () {    return view('welcome');});//postRoute::post('/default', function () {    return 'This is a request from  post';});
    • 多请求路由
    Route::match(['get', 'post'], 'foo', function () {    return 'This is a request from get or post';});Route::any('bar', function () {    return 'This is a request from any HTTP verb';});
    • 参数路由
    Route::get('user/{id}', function ($id) {    return 'User ' . $id;});//可以设置默认值Route::get('user/{name?}', function ($name=null) {    return 'User ' . $name;});//可以添加正则约束Route::get('user/{name?}', function ($name=null) {    return 'User ' . $name;})->where('name', '[A-Za-z]+');//多个正则约束Route::get('good/{id}/{name?}', function ($id, $name=null) {    return 'Good name=' .$name.' id='.$id ;})->where(['id'=>'[0-9]+', 'name'=>'[A-Za-z]+']);
    • 路由别名
    Route::get('user/member-center', ['as'=>'center', function () {    return route('center'); //优化url后 添加别名后不用更改业务逻辑}]);
    • 路由群组
    Route::group(['prefix'=>'member'], function () {    //添加多个路由    Route::get('user/center', ['as'=>'center', function () {        return route('center'); //优化url后 添加别名后不用更改业务逻辑    }]);    Route::get('index', function () {        return view('welcome');    });});
    • 路由视图
    Route::get('/default', function () {    return view('welcome');});Route::view('/index', 'index', ['website'=>'laravel学院']);
  8. 控制器

    • controller文件编写
    /app/http/controller/MemberController.php<?phpnamespace App\Http\Controllers;class MemberController extends Controller{    public function info($id) {        //return route('memberinfo');        return '返回参数 id= '.$id;    }}
    • 路由文件编写
    //普通控制器Route::get('/member/info', 'MemberController@info');//加别名Route::get('/member/info', [    'uses'=>'MemberController@info',    'as' => 'memberinfo']);//加参数Route::get('/member/info/{id}', [    'uses'=>'MemberController@info',    'as' => 'memberinfo']);
  9. 视图

    • 新建视图
    views/ 下新建模版文件views/member 也可以自定义目录
    • 输出视图
    class MemberController extends Controller{    public function info($id) {        //return view('member/info');        //分配变量        return view('member/info', ['name'=>'mengyuan', 'age'=>18]);    }}
    • 模版变量
    {{$name}} {{age}}
  10. 模型

    • 新建模型
    /app/Member.php<?phpnamespace App;use Illuminate\Database\Eloquent\Model;class Member extends Model {    public static function getMember() {        return 'member name is mengyuan';    }}
    • 使用模型
    <?phpnamespace App\Http\Controllers;use App\Member;class MemberController extends Controller{    public function info($id) {        return Member::getMember();    }}