laravel開發擴展記錄

whoops 錯誤提示擴展

whoops 是一個很是優秀的 PHP Debug 擴展,它可以使你在開發中快速定位出錯的位置。laravel默認安裝。
J3xtgK2YDe.png
區域 1 —— 是錯誤異常的簡介
區域 2 —— 是錯誤發生的位置
區域 3 —— 是程序調用堆棧,這裏看到腳本調用的順序
區域 4 —— 是一些運行環境的信息,包括:
GET Data —— 用戶提交的 GET 請求,PHP 超級全局變量 $_GET 裏的內容
POST Data —— 表單提交的數據,PHP 超級全局變量 $_POST 裏的內容
Files —— 用戶上傳文件的數據,PHP 超級全局變量 $_FILES 裏的內容
Cookies —— 當前用戶的 Cookie 信息,PHP 超級全局變量 $_COOKIE 裏的內容
Session —— 當前用戶會話信息,PHP 超級全局變量 $_SESSION 裏的內容
Server/Request Data —— PHP 超級全局變量 $_SERVER 裏的內容
Environment Variables —— 項目 .env 裏的內容php

Auth 認證擴展

Laravel 自帶的用戶認證功能,能夠利用此功能來快速構建用戶中心。laravel

首先執行認證腳手架命令,生成代碼:web

php artisan make:auth

make:auth 命令爲咱們生成了 resources/views/auth 下的四個文件:sql

視圖名稱 說明
register.blade.php 註冊頁面視圖
login.blade.php 登陸頁面視圖
passwords/email.blade.php 提交郵箱發送郵件的視圖
passwords/reset.blade.php 重置密碼的頁面視圖

此命令會修改 routes/web.php 裏的內容:數據庫

Route::get('/', 'PagesController@root')->name('root');
Auth::routes();

Route::get('/home', 'HomeController@index')->name('home');

默認以/home爲登陸成功的主頁,集成了用戶登陸,註冊,退出登陸等功能。數組

mews/captcha 驗證碼擴展

mews/captcha是一個第三方驗證碼擴展包
使用 Composer 安裝:數據結構

composer require "mews/captcha:~2.0"

以laravel爲例運行如下命令生成配置文件 config/captcha.php:composer

php artisan vendor:publish --provider='Mews\Captcha\CaptchaServiceProvider'

咱們能夠打開 config/captcha.php 配置文件,能夠看到這些配置選項都很是通俗易懂,characters 選項是用來顯示給用戶的全部字符串,default, flat, mini, inverse 分別是定義的四種驗證碼類型,你能夠在此修改對應選項自定義驗證碼的長度、背景顏色、文字顏色等屬性。框架

  1. captcha_src() 方法是 mews/captcha 提供的輔助方法,用於生成驗證碼圖片連接。
  2. 『驗證碼』區塊中 onclick() 是 JavaScript 代碼,實現了點擊圖片從新獲取驗證碼,容許用戶在驗證碼太難識別的狀況下換一張圖片。
  3. mews/captcha 是專門爲 Laravel 量身定製的擴展包,能很好的兼容 Laravel 生成的註冊邏輯。咱們只須要在註冊的時候,添加上表單驗證規則 'captcha' => 'required|captcha' 便可。

overtrue/laravel-lang 語言包擴展

GitHub 擴展包 - overtrue/laravel-lang 來對 Laravel 提供默認提示信息添加多語言版本翻譯。
使用 Composer 安裝:ide

composer require "overtrue/laravel-lang:~3.0"

Laravel 爲驗證消息支持多語言方案,咱們能夠經過添加一個如 resources/lang/xx/validation.php 語言包,並在語言包的 custom 數組中對翻譯語言進行設定便可:

'custom' => [
    'email' => [
        'required' => '郵箱地址不能爲空!',
    ],
],

Carbon 時間操做擴展

Carbon 是 PHP 知名的 DateTime 操做擴展,Laravel 將其默認集成到了框架中。diffForHumans 是 Carbon 對象提供的方法,默認狀況是英文的,若是要使用中文時間提示,則須要對 Carbon 進行本地化設置。對 Carbon 進行本地化的設置很簡單,只在 AppServiceProvider 中調用 CarbonsetLocale 方法便可,AppServiceProvider 是框架的核心,在 Laravel 啓動時,會最早加載該文件。

Intervention/image 圖像處理擴展

Intervention/image 擴展包是圖像處理包
使用 Composer 安裝:

composer require "intervention/image"

執行如下命令獲取配置信息:

php artisan vendor:publish --provider="Intervention\Image\ImageServiceProviderLaravel5"

運行成功以後打開 config/image.php 文件能夠看到只有一個驅動器的選項,支持的值有 GD 庫 和 ImageMagic,若是將要開發的項目須要較專業的圖片,請考慮 ImageMagic

Laravel 5.x Scaffold Generator 自動代碼擴展

開發時遵照的代碼風格是 Laravel 項目開發規範。遵守此規範,在實際操做中,有許多重複,接下來推薦一款專爲此規範量身定製的代碼生成器 —— Laravel 5.x Scaffold Generator 。代碼生成器能讓你經過執行一條 Artisan 命令,完成註冊路由、新建模型、新建表單驗證類、新建資源控制器以及所需視圖文件等任務,不只約束了項目開發的風格,還能極大地提升咱們的開發效率。能夠利用此擴展來快速構建項目原型。

composer require "summerblue/generator:~0.5" --dev

例子:

php artisan make:scaffold xxx(表名) --schema="title:string:index(表數據結構)"

代碼生成器會爲咱們作下列的事情:

  1. 建立數據庫遷移文件 —— xxxx_create_xxx_table.php;
  2. 建立數據工廠文件 —— xxxFactory.php;
  3. 建立數據填充文件 —— xxxTableSeeder.php;
  4. 建立模型基類文件 —— Model.php, 並建立話題數據模型;
  5. 建立控制器 —— xxxController.php;
  6. 建立表單請求的基類文件 —— Request.php,並建立請求驗證類;
  7. 建立話題模型事件監控器 xxxObserver 並在 AppServiceProvider 中註冊;
  8. 建立受權策略基類文件 —— Policy.php,同時建立話題受權類,並在 AuthServiceProvider 中註冊;
  9. 在 web.php 中更新路由,新增話題相關的資源路由;
  10. 新建符合資源控制器要求的三個話題視圖文件,並存放於 resources/views/xxx 目錄中;
  11. 執行了數據庫遷移命令 artisan migrate;
  12. 所以次操做新建了多個文件,最終執行 composer dump-autoload 來生成 classmap。

laravel-debugbar debug擴展

使用 Composer 安裝:

composer require "barryvdh/laravel-debugbar:~3.1" --dev

生成配置文件,存放位置 config/debugbar.php

php artisan vendor:publish --provider="Barryvdh\Debugbar\ServiceProvider"

打開 config/debugbar.php,將 enabled 的值設置爲:

'enabled' => env('APP_DEBUG', false)

修改完之後, Debugbar 分析器的啓動狀態將由 .env文件中 APP_DEBUG 值決定。

刷新列表頁面便可看到咱們的網頁底部多了一個開發者工具欄點開後能夠查看網頁的運行狀況包括sql的執行狀況,極大地方便了頁面的調優。

圖片描述


目前就寫到這裏,以上都是比較基本經常使用的laravel 網站擴展。後續還會爲你們帶來一些最新的技術擴展。

相關文章
相關標籤/搜索