Laravel的驗(yàn)證碼庫(kù)gregwar/captcha

在Laravel中有很多圖片驗(yàn)證碼的庫(kù)可以使用副女,本篇介紹其中之一:gregwar/captcha,這個(gè)庫(kù)比較簡(jiǎn)單速梗,在Laravel中比較常用肮塞。下面我們就來(lái)介紹下使用細(xì)節(jié):

首先, composer.json中如下加入配置:

"require": {
   "gregwar/captcha": "1.*" 
},

然后,已成習(xí)慣的命令:

composer update

接下來(lái)就可以正常使用了姻锁,根據(jù)具體的開發(fā)需求枕赵,可以有很多種方式去使用。
可以將驗(yàn)證碼圖片保存文件:

<?php
    $builder->save('out.jpg');

可以直接輸出圖片到網(wǎng)頁(yè):

<?php
    header('Content-type: image/jpeg');
    $builder->output();

可以生成內(nèi)聯(lián)圖片:

<img src="<?php echo $builder->inline(); ?>" />

以下演示了其中一種使用方式位隶,直接輸出圖片到網(wǎng)頁(yè)拷窜。
我定義了一個(gè)Controller:

<?php namespace App\Http\Controllers;

use App\Http\Requests;
use App\Http\Controllers\Controller;

use Illuminate\Http\Request;

//引用對(duì)應(yīng)的命名空間
use Gregwar\Captcha\CaptchaBuilder;
use Session;

class KitController extends Controller {

    /**
     * Display a listing of the resource.
     *
     * @return Response
     */
    public function captcha($tmp)
    {
                //生成驗(yàn)證碼圖片的Builder對(duì)象,配置相應(yīng)屬性
        $builder = new CaptchaBuilder;
        //可以設(shè)置圖片寬高及字體
        $builder->build($width = 100, $height = 40, $font = null);
        //獲取驗(yàn)證碼的內(nèi)容
        $phrase = $builder->getPhrase();

        //把內(nèi)容存入session
        Session::flash('milkcaptcha', $phrase);
        //生成圖片
        header("Cache-Control: no-cache, must-revalidate");
        header('Content-Type: image/jpeg');
        $builder->output();
    }

}

下面我們可以設(shè)置相應(yīng)的router訪問(wèn)這個(gè)驗(yàn)證碼圖片, 修改router.php:

Route::get('kit/captcha/{tmp}', 'KitController@captcha');

現(xiàn)在可以通過(guò)具體的url涧黄,可以訪問(wèn)看到圖片了

驗(yàn)證碼正確性判斷篮昧,也可以由下列方式來(lái)驗(yàn)證:

$userInput = \Request::get('captcha');

if (Session::get('milkcaptcha') == $userInput) {
    //用戶輸入驗(yàn)證碼正確
    return '您輸入驗(yàn)證碼正確';
} else {
    //用戶輸入驗(yàn)證碼錯(cuò)誤
    return '您輸入驗(yàn)證碼錯(cuò)誤';
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市笋妥,隨后出現(xiàn)的幾起案子懊昨,更是在濱河造成了極大的恐慌,老刑警劉巖春宣,帶你破解...
    沈念sama閱讀 218,546評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件酵颁,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡月帝,警方通過(guò)查閱死者的電腦和手機(jī)躏惋,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,224評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)嚷辅,“玉大人簿姨,你說(shuō)我怎么就攤上這事◆じ悖” “怎么了扁位?”我有些...
    開封第一講書人閱讀 164,911評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)趁俊。 經(jīng)常有香客問(wèn)我贤牛,道長(zhǎng),這世上最難降的妖魔是什么则酝? 我笑而不...
    開封第一講書人閱讀 58,737評(píng)論 1 294
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上沽讹,老公的妹妹穿的比我還像新娘般卑。我一直安慰自己,他們只是感情好爽雄,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,753評(píng)論 6 392
  • 文/花漫 我一把揭開白布蝠检。 她就那樣靜靜地躺著,像睡著了一般挚瘟。 火紅的嫁衣襯著肌膚如雪叹谁。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,598評(píng)論 1 305
  • 那天乘盖,我揣著相機(jī)與錄音焰檩,去河邊找鬼。 笑死订框,一個(gè)胖子當(dāng)著我的面吹牛析苫,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播穿扳,決...
    沈念sama閱讀 40,338評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼衩侥,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了矛物?” 一聲冷哼從身側(cè)響起茫死,我...
    開封第一講書人閱讀 39,249評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎履羞,沒(méi)想到半個(gè)月后峦萎,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,696評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡吧雹,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,888評(píng)論 3 336
  • 正文 我和宋清朗相戀三年骨杂,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片雄卷。...
    茶點(diǎn)故事閱讀 40,013評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡搓蚪,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出丁鹉,到底是詐尸還是另有隱情妒潭,我是刑警寧澤,帶...
    沈念sama閱讀 35,731評(píng)論 5 346
  • 正文 年R本政府宣布揣钦,位于F島的核電站雳灾,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏冯凹。R本人自食惡果不足惜谎亩,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,348評(píng)論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧匈庭,春花似錦夫凸、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,929評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至衷咽,卻和暖如春鸽扁,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背镶骗。 一陣腳步聲響...
    開封第一講書人閱讀 33,048評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工桶现, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人卖词。 一個(gè)月前我還...
    沈念sama閱讀 48,203評(píng)論 3 370
  • 正文 我出身青樓巩那,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親此蜈。 傳聞我的和親對(duì)象是個(gè)殘疾皇子即横,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,960評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 原創(chuàng)作品,允許轉(zhuǎn)載裆赵,轉(zhuǎn)載時(shí)請(qǐng)務(wù)必以超鏈接形式標(biāo)明原始出處东囚、作者信息和本聲明,否則后果自負(fù)战授。如果你覺(jué)得這篇文章對(duì)你有...
    Lee26閱讀 39,099評(píng)論 19 21
  • 原文鏈接 必備品 文檔:Documentation API:API Reference 視頻:Laracasts ...
    layjoy閱讀 8,607評(píng)論 0 121
  • 必備品文檔:DocumentationAPI: API Reference視頻:Laracasts速查表:Lara...
    ethanzhang閱讀 5,746評(píng)論 0 68
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,146評(píng)論 25 707
  • iOS11出來(lái)也有一段時(shí)間了页藻,其中ARKit框架還是比較有吸引力的。就想用點(diǎn)時(shí)間學(xué)習(xí)一下植兰,來(lái)做點(diǎn)好玩的東西份帐。畢竟有...
    淘碼小工閱讀 766評(píng)論 0 0