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 裏的內容

Auth

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

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

php artisan make:auth

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

視圖名稱 說明
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:

  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' 即可。

mews/captcha

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

 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

使用 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 網站擴展。後續還會爲大家帶來一些最新的技術擴展。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章