笔记:laravel 创建公共函数
有时候我们希望创建一个函数在任何地方都可以调用,目前很多教程是创建一个helps.php文件然后在composer.json中添加自动加载这个文件,但是随着文件的增长这个文件会很难管理。
我们的解决方法是讲作用类似的函数放在一个文件夹中,这样更加清晰可读。
首先我们需要创建一个HelperServiceProvider.php文件
php artisan make:provider HelperServiceProvider
运行上面的命令后我们就在app\Providers目录创建了一个HelperServiceProvider.php文件
打开我们创建的HelperServiceProvider.php文件 ,我们移出boot 这里我们不会用到这个方法
我们在register()方法中 输入以下代码
public function register()
{
foreach(glob(app_bath('Helpers') . '/' .'php') as $file) {
require_once $file;
}
}
这段代码是用来引入app\Helpers下面所有的文件, 我们会把公共函数放在这个目录下面
然后我们加载这个provider, 打开config/app.php文件,在AppServiceProvider上面添加HelperServiceProvider:
/*
* Application Service Providers...
*/
App\Providers\HelperServiceProvider:::class.
App\Providers\AppServiceProvider::class,
App\Providers\AuthServiceProvider::class,
现在我们创建一个简单的函数,在app\Helpers下创建一个文件Carbon.php:
<?php /**
* Carbon helper
*
* @param $time
* @param $tz
*
* @return Carbon\Carbon
*/
function carbon($time = null, $tz = null)
{
return new \Carbon\Carbon($time, $tz);
}
在这里你不需要添加命名空间,如果需要检查函数是否存在可以使用function_exits()函数,现在你可以在任何地方调用carbon函数
现在你可以在app/Helpers下创建自己的助手函数文件了!