您需要創建自己的HashServiceProvider
(及其服務提供商),因此使用人員能夠創建自己的(你可以保持原來的稱呼它)
$ artisan make:provider HashServiceProvider
現在複製大多數股票HashServiceProvider的身體(可以在\Illuminate\Hashing\HashServiceProvider.php中找到股票),並修復名稱空間和導入。現在轉到config/app.php並找到HashServiceProvider並更改您自己的服務提供商的庫存HashServiceProvider,因爲您完全按照我的指導進行操作,因此您應該注意到沒有改變。
現在你必須創建(實現)你自己的哈希函數。你有兩個選擇:
A.延長原BcryptHasher這種方法的
<?php
namespace Your\Namespaced\Hasher;
use Illuminate\Hashing\BcryptHasher as OriginalHasher;
class BcryptHasher extends OriginalHasher
{...} // and change what you need
例子可以在Kyslik/django-bcrypt庫
B.找到創造新的類,並實現Hasher interface
<?php
namespace Your\Namespaced\Hasher;
use Illuminate\Contracts\Hashing\Hasher;
class MyHasher implements Hasher {...} // IDE should scream at you with methods you need to implement
最後在你的服務提供者(HashServiceProvider)中更改register()
方法來返回你的實現的哈希。
做一個$ composer dump-autoload
,你可以享受自己閃亮的哈希。