为了账号安全,请及时绑定邮箱和手机立即绑定

轻松学会Laravel-基础篇

难度中级
时长 2小时32分
学习人数
综合评分9.60
181人评价 查看评价
9.9 内容实用
9.6 简洁易懂
9.3 逻辑清晰
  • CREATE TABLE IF NOT EXISTS student( `id` INT AUTO_INCREMENT PRIMARY KEY, `name` VARCHAR(255) NOT NULL DEFAULT '' COMMENT '姓名', `age` TINYINT UNSIGNED NOT NULL DEFAULT 0 COMMENT '年龄', `sex` TINYINT UNSIGNED NOT NULL DEFAULT 10 COMMENT '性别', `created_at` INT NOT NULL DEFAULT 0 COMMENT '新增时间', `updated_at` INT NOT NULL DEFAULT 0 COMMENT '修改时间' )ENGINE=INNODB DEFAULT CHARSET = UTF8 AUTO_INCREMENT=1001 COMMENT='学生表';
  • CREATE TABLE IF NOT EXISTS student( `id` INT AUTO_INCREMENT PRIMARY KEY, `name` VARCHAR(255) NOT NULL DEFAULT '' COMMENT '姓名', `age` TINYINT UNSIGNED NOT NULL DEFAULT 0 COMMENT '年龄', `sex` TINYINT UNSIGNED NOT NULL DEFAULT 10 COMMENT '性别', `created_at` INT NOT NULL DEFAULT 0 COMMENT '新增时间', `updated_at` INT NOT NULL DEFAULT 0 COMMENT '修改时间' )ENGINE=INNODB DEFAULT CHARSET = UTF8 AUTO_INCREMENT=1001 COMMENT='学生表';
  • app:包含核心代码,业务逻辑等等,其中http中的controller更是重要. bootstrap:框架启动加载配置文件. config:包含所有的配置文件. database:数据库文件. public:入口,项目的静态资源,比如css之类. resources:包含视图,图片等资源 storage:编译后的模版文件,还有sessions,缓存等等 tests:测试代码 vendor:包含composer加载的依赖文件
  • 路由 场景:将用户的请求转发给相应的程序进行处理; 作用:建立URL和程序(处理函数)之间的映射; 类型:get,post,put,pathc,delete 注意: 业务逻辑不应该写在路由当中,路由只是接收参数后转发给控制器(Controller)进行处理 基本路由 路由位置(laravel->app->Http->routes.php) get请求路由 Route::get('basic1',function(){ return 'Hello World'; }) post请求路由 Route::post('basic2',function(){ return 'basic2'; }) 多请求路由:([类型], 路由名,函数) Route::match(['get','post'],'multy1',function(){ return 'multy1'; }) 多请求路由(任意类型) Route::any('multy2',function(){ return 'multy2'; }) 路由参数 Route::get('user/{id}',function($id){ return 'USER-'.$id; }); 将name赋默认值kitty,是name变为可选项(加?) Route::get('user/{name?}',function($name = 'kitty'){ return 'USERNAME-'.$name; });
  • <body> <div class="header"> @section('header') 头部 @show </div> <div class="main"> <div class="sidebar"> @section('sidebar') 侧边栏 @show </div> <div class="content"> @yield('content','主要内容区域'); </div> </div> <div class="footer"> @section('footer') 底部 @show </div> </body> </html> {{-- section是用来定义一个视图片段的--}} {{-- yield 是用来展示某个指定的section里所表达的内容 可以将其假设为一个占位符用子模版去实现它--}} {{--区别 yield是不可扩展的(因为他只声明定义了一个视图片段没有任何内容) section既定义了视图片段,也可以有内容,还可以被子模版扩展 --}}
  • 路由和控制器绑定。 Route::请求方式('请求url',控制器名称@控制器下的方法) Route::请求方式('请求url',[‘usre’=>控制器名称@控制器下的方法]) 别名: Route::请求方式('请求url',[‘usre’=>控制器名称@控制器下的方法,‘as’=>'别名']) 带参数 Route::请求方式('/demo/{id}',[‘usre’=>控制器名称@控制器下的方法])
  • app目录:程序的核心代码 和 我们的业务逻辑代码,其中的 http 目录是我们业务逻辑的存放点。http 目录下有 定义路由文件 和 中间器文件 和 编写业务逻辑的控制器 目录。 bootstrap:包含框架启动的和自动加载文件。 config:包含所有程序中的配置文件,比如:cache.php(缓存)、database.php(数据库)、mail.php(邮件)、queue.php(队列)、session 和 view.php(视图)。 database:包括数据库填充 和 迁移文件。 public:程序入口 和 静态文件,比如之后的 CSS 、JS、IMG 等。 resources:包含 视图 和 原始系统文件。 storage:包含 编译后的文件。 tests:单元测试目录,存放测试代码。
  • <!-- url()通过路由的名称生成url --> <a href="{{ url('url') }}">url()</a> <br> <!-- action()通过制定控制器及方法名生成url --> <a href="{{ action('StudentController@urlTest') }}">action()</a> <br> <!-- route()通过路由的别名生成url --> <a href="{{ route('url') }}">route()</a>
  • <!DOCTYPE  html>
    <html lang="en">
        <meta charset="utf-8">
        <title>轻松学会Laravel - @yield('title')</title>
        <style>
            .header{
            width:1000px;
            height:150px;
            margin:0 auto;
            background:#f5f5f5;
            border: 1px solid #ddd;
            }
            .main{
            width:1000px;
            height:300px;
            margin:0 auto;
            clear:both;
            margin-top:15px;
            }
            .main .sidebar{
            float:left;
            width:20%;
            height: inherit;
            background: #f5f5f5;
            border: 1px solid #ddd;
            }
            .main .content{
            float:right;
            width:75%;
            height:inherit;
            background:#f5f5f5;
            border: 1px solid #ddd;
            }
            .footer{
            width:1000px;
            height:150px;
            margin:0 auto;
            margin-top:15px;
            background:#f5f5f5;
            border:1px solid #ddd;
            }
            </style>
    <body>
        <div class = "header">
        @section('header')头部@show
        </div>
        <div class = "main">
            <div class = "sidebar">
            @section('sidebar')
            侧边栏
            @show
            </div>
            
            <div class = "content">
            @yield('content','主要内容区域')
            </div>
        </div>
        <div class = "footer">
        @section('footer')
        底部
        @show
        </div>
    </body>
    </html>



  • CREATE TABLE IF NOT EXISTS student(

        `id` INT AUTO_INCREMENT PRIMARY KEY,

        `name` VARCHAR(255) NOT NULL DEFAULT  '' COMMENT '姓名',

        `age` TINYINT UNSIGNED NOT NULL DEFAULT 0 COMMENT '年龄',

        `sex` TINYINT UNSIGNED NOT NULL DEFAULT 10 COMMENT '性別',

        `created_at` INT NOT NULL DEFAULT 0 COMMENT '新增时间',

        `updated_at` INT NOT NULL DEFAULT 0 COMMENT '修改时间'


    )ENGINE=InnoDB DEFAULT CHARSET=UTF8 AUTO_INCREMENT=1001 COMMENT='学生表';


  • mvc是框架,是思想,不是设计模式 设计模式指的是,单例模式,工厂模式,观察者模式,策略模式
  • 将参数使用正则表达式来限制 Route::get('user/{name?}',function($name = 'kitty'){ return 'USERNAME-'.$name; })->where('name',[A-Za-z]+); //name可由多个字母组成 Route::get('user/{id}/{name?}',function($name = 'kitty'){ return 'USER-Id:'. $id . ' name:'.$name; })->where['id'=>[0-9]+,'name'=>[A-Za-z]+] //路由别名 Route::get('user/member-center',['as' => 'center',function(){ return 'member-center'; }]); 路由群组,prefix 路由前缀 Route::group(['prefix' => 'member'],function(){ Route::get('user/member-center',['as' => 'center',function(){ return 'member-center'; }]); Route::any('multy2',function(){ return 'multy2'; }); }); 路由视图 Route::get('view',function(){ return view('welcome');//调用/laravel/resources/views/welcome。blade.php文件 });
  • //聚合函数 \DB::table('as_admin')->select('id','name','age')->count(); //返回记录数 \DB::table('as_admin')->select('id','name','age')->max('age'); //最大值,min同理 \DB::table('as_admin')->select('id','name','age')->avg('age'); //返回平均值 \DB::table('as_admin')->select('id','name','age')->sum('sum'); //返回指定字段数据
  • <style> .header{ width: 1000px; height:150px; margin: 0 auto; background:#f5f5f5; border: 1px solid #ddd; } .main{ width: 1000px; height:300px; margin: 0 auto; margin-top:15px; clear: both; } .main .content{ float: right; width: 75%; height:inherit; background: #f5f5f5; border: 1px solid #ddd; } .sidebar{ float:left ; width: 20%; height:inherit; border: 1px solid #ddd; background:#f5f5f5; } .footer{ width: 1000px; height:150px; margin: 0 auto; margin-top: 15px; background: #f5f5f5; border: 1px solid #ddd; } </style>
  • 基础路由:

        Route::请求类型('目录名', function(){

            return 值;

    });


    多请求路由:

    ①: 

        Route::match(['类型1','类型2'], '目录名', function(){

            return 值;

    });

    ②: 

        Route::any('路由名', function(){

            return 值;

    });


首页上一页1234567下一页尾页

举报

0/150
提交
取消
课程须知
1、掌握基本的HTML相关知识 2、熟悉PHP语言,了解面向对象、命名空间、Traits等特性 3、熟悉关系型数据库Mysql,了解数据库的表、记录、列等概念。
老师告诉你能学到什么?
1、了解Laravel的优势 2、快速搭建Laravel开发环境 3、掌握Laravel中的路由和MVC 4、掌握Laravel中的数据库操作 5、掌握Laravel中的模板引擎
意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!