1、在根目录下新建
packages/itchuan/src/MD5Hasher.php
并写入
<?php
namespace Itchuan\Hasher;
class MD5Hasher
{
public function make($value, array $options = [])
{
$salt = isset($options['salt']) ? $options['salt'] : '';
return hash('md5', $value . $salt);
}
public function check($value, $hashValue, array $options = [])
{
$salt = isset($options['salt']) ? $options['salt'] : '';
return hash('md5', $value . $salt) == $hashValue;
}
}
2、composer.json文件中
"autoload": {
"psr-4": {
"App\\": "app/",
"Itchuan\\Hasher\\": "packages/itchuan/hasher/src/"
}
},
3、执行
composer dump-autoload
4、执行
php artisan make:provider MD5HasherProvider
默认发布app/providers/MD5HasherProvider.php,复制到packages/itchuan/src/MD5HasherProvider.php
5、更改MD5HasherProvider.php命名空间
<?php
namespace Itchuan\Hasher;
use Illuminate\Support\ServiceProvider;
class MD5HasherProvider extends ServiceProvider
{
/**
* Register services.
*
* @return void
*/
public function register()
{
//
}
/**
* Bootstrap services.
*
* @return void
*/
public function boot()
{
//
$this->app->singleton('md5hasher',function (){
return new MD5Hasher();
});
//app('md5hasher');
}
}
6、此时可以通过 app('md5hasher')->make('ff');使用