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

laravel二日学有问题及时指出 写出来为了方便他人也提炼自己所学还望指点

标签:
PHP

laravel 安装:
composer down 下来 首先确定 php是否在计算机的环境变量里 其次在确定composer是否在环境变量里 这关乎你能不能实行这种方法
cd到你的本地环境根目录 运行 composer global require "laravel/installer"
包down了之后 可以用 laravel new app-name (文件夹名字)
也可以用 composer来创建 (当前一种不行的时候用这种 或者直接用这种) composer create-project laravel/laravel --prefer-dist blog
创建过后打开命令行或者cmd 敲上php artisan serve 就可以访问了
路由:
路由是一个项目的根基 laravel的路由相比其他的框架 (接触的不多)他的路由不同 他的路由是由 App\Providers\RouteServiceProvider 这个类载入的一个路由群组(就是一个很多单个路由在一起) ,接受到参数然后进入指定的控制器方法 这个路由文件放在哪呢 app\http\route.php
当然这种参数接受方法 可以很多样可以指定 可以匹配 只要你会玩 能玩好 都可以 这路由会有一些中间件提供一些session的状态和crsf的保护 举个栗子:
Route::get($uri, $callback);
Route::post($uri, $callback);
Route::put($uri, $callback);
Route::patch($uri, $callback);
Route::delete($uri, $callback);
Route::options($uri, $callback);
如何注册你自己想要的路由呢 看下面
Route::get('home/index', ['as'=>'index','uses'=>'indexController@home']);
接受到home/index 后将跳到index控制器下的home方法下去 as指定路由名称 use 指定控制器与方法名用@符间隔
插一个 中间件的概念 中间件是laravel 为过滤进入应用的 HTTP 请求提供了一套便利的机制 包含权限控制,认证,表单验证(crsf)等等一些中间件

控制器:
控制器存放如app\Http\Controllers 下 可以通过PHP artisan make:Controler name(控制器名) 没什么特殊情况就用这个 为什么 便利

    创建自己的方法 创建控制器后 干嘛呢 渲染模板啊 对吧 上面 就有 view方法 第一个是文件位置 文件放哪呢 文件放在resource\views 可以自己建文件夹 很自由大胆建
    laravel 的模板引擎是blade引擎 所以自己创建的时候 记得加blade

视图层:
视图层的主要就是上面所说的blade模板引擎 先说接受PHP传过来的数据吧 就是上面那个name 可以用{{ $name }} 接收 说完简单的变量接受 如果我们是一个数组的话怎么办叻
循环@foreach($a as $b) @endforeach @for( $i=1;$i<5;$i++) @endfor 不一一列举 懂就好 判断@if (count($records) === 1) @endif
最后一个包布局 包样式 这个东西是常见的东西 先说布局
我在views下创建一个layout文件夹放一个top_layout.blade.php
代码如下:
<html>
<head>
<title>HomePage - @yield('title')</title>
</head>
<body>
@section('sidebar')
This is the master sidebar.
@show <!-- 展示子视图同名section的位置 -->

    <div class="demo">
        @yield('content') <!-- 展示子视图指定section的位置 -->
    </div>
</body>

</html>
然后有views\home\home.blade.php文件 代码:
@extends('layouts.home.top_layout')<!-- 包过来父级视图的文件位置 -->
@section('title', 'Mr.Knowledgeable')<!-- title -->
@section('sidebar')
@parent<!-- 放入上级视图位置 -->
<p>This is appended to the {{$name}} sidebar.</p>
@endsection
@section('content')
@foreach($list as $users)
<p>This is user {{ $users->member_name }}</p>
@endforeach
@endsection
这样差不多凑合用 那我想在引用点js css 啊 怎么办 5 之前是可以直接用这个html方法的 现在没了 就要composer了
composer require illuminate/html 5.*
包down下来之后 在你的 config/app.php
注册服务提供者到 providers 数组
(至于有些说还要加这个 我想说的是我的5.2的 加了这行后 框架会起不来 暂时还不知道什么原因 所以我注释了他 一样的用 如果有知道 可以告诉我 )
'providers' => [

    /*
     * Laravel Framework Service Providers...
     */
    Illuminate\Auth\AuthServiceProvider::class,
    Illuminate\Broadcasting\BroadcastServiceProvider::class,
    Illuminate\Bus\BusServiceProvider::class,
    Illuminate\Cache\CacheServiceProvider::class,
    Illuminate\Foundation\Providers\ConsoleSupportServiceProvider::class,
    Illuminate\Cookie\CookieServiceProvider::class,
    Illuminate\Database\DatabaseServiceProvider::class,
    Illuminate\Encryption\EncryptionServiceProvider::class,
    Illuminate\Filesystem\FilesystemServiceProvider::class,
    Illuminate\Foundation\Providers\FoundationServiceProvider::class,
    Illuminate\Hashing\HashServiceProvider::class,
    Illuminate\Mail\MailServiceProvider::class,
    Illuminate\Pagination\PaginationServiceProvider::class,
    Illuminate\Pipeline\PipelineServiceProvider::class,
    Illuminate\Queue\QueueServiceProvider::class,
    Illuminate\Redis\RedisServiceProvider::class,
    Illuminate\Auth\Passwords\PasswordResetServiceProvider::class,
    Illuminate\Session\SessionServiceProvider::class,
    Illuminate\Translation\TranslationServiceProvider::class,
    Illuminate\Validation\ValidationServiceProvider::class,
    Illuminate\View\ViewServiceProvider::class,
    //Illuminate\Html\HtmlServiceProvider::class,

    /*
     * Application Service Providers...
     */
    App\Providers\AppServiceProvider::class,
    App\Providers\AuthServiceProvider::class,
    App\Providers\EventServiceProvider::class,
    App\Providers\RouteServiceProvider::class,

],

注册门面到 aliases 数组
'aliases' => [

    'App' => Illuminate\Support\Facades\App::class,
    'Artisan' => Illuminate\Support\Facades\Artisan::class,
    'Auth' => Illuminate\Support\Facades\Auth::class,
    'Blade' => Illuminate\Support\Facades\Blade::class,
    'Cache' => Illuminate\Support\Facades\Cache::class,
    'Config' => Illuminate\Support\Facades\Config::class,
    'Cookie' => Illuminate\Support\Facades\Cookie::class,
    'Crypt' => Illuminate\Support\Facades\Crypt::class,
    'DB' => Illuminate\Support\Facades\DB::class,
    'Eloquent' => Illuminate\Database\Eloquent\Model::class,
    'Event' => Illuminate\Support\Facades\Event::class,
    'File' => Illuminate\Support\Facades\File::class,
    'Gate' => Illuminate\Support\Facades\Gate::class,
    'Hash' => Illuminate\Support\Facades\Hash::class,
    'Lang' => Illuminate\Support\Facades\Lang::class,
    'Log' => Illuminate\Support\Facades\Log::class,
    'Mail' => Illuminate\Support\Facades\Mail::class,
    'Password' => Illuminate\Support\Facades\Password::class,
    'Queue' => Illuminate\Support\Facades\Queue::class,
    'Redirect' => Illuminate\Support\Facades\Redirect::class,
    'Redis' => Illuminate\Support\Facades\Redis::class,
    'Request' => Illuminate\Support\Facades\Request::class,
    'Response' => Illuminate\Support\Facades\Response::class,
    'Route' => Illuminate\Support\Facades\Route::class,
    'Schema' => Illuminate\Support\Facades\Schema::class,
    'Session' => Illuminate\Support\Facades\Session::class,
    'Storage' => Illuminate\Support\Facades\Storage::class,
    'URL' => Illuminate\Support\Facades\URL::class,
    'Validator' => Illuminate\Support\Facades\Validator::class,
    'View' => Illuminate\Support\Facades\View::class,
    'Html' => Illuminate\Html\HtmlFacade::class,
    'Form' => Illuminate\Html\FormFacade::class,

],

然后在把你想引用的文件放在public下是css 就叫css js就js whatever you like
使用方法:
1>
{!!Html::style('css/style.css')!!}
{!!Html::script('js/script.js')!!}
{!!Html::style('//netdna.bootstrapcdn.com/bootstrap/3.0.3/css/bootstrap.min.css')!!}
{!!Html::script('//code.angularjs.org/1.2.13/angular.js')!!}
2>
<link rel="stylesheet" href="{{ URL::asset('//netdna.bootstrapcdn.com/bootstrap/3.0.3/css/bootstrap.min.css') }}">
<link rel="stylesheet" href="{{ URL::asset('css/bootstrap.css') }}"><script type="text/javascript" class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="{{ URL::asset('js/jquery.min.js') }}"></script>

今天就到这吧 学完了 弄明白了再来 。

点击查看更多内容
1人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消