首页 > 解决方案 > 如何创建一个可以在 Laravel 中随处使用的方法

问题描述

我想对日期进行一些更改,例如,我想将它炸开,做一些操作并再次内爆,我想在我的应用程序中使用它,所以这是我的代码:

$divided_date = explode('/', $request->point_date);
$converted_date = Verta::getGregorian($divided_date[0], $divided_date[1], $divided_date[2]); // [2015,12,25]
$begindate = implode('/', $converted_date);

例如,我想创建一个名为 DateConvertor() 的函数,以及我想转换日期的任何地方,我使用如下所示的内容。

$request->somedate()->DateConvertor();

或者例如

Dateconvertor($request->someday);

它返回转换后的日期,所以现在我不知道是否使用静态方法,也不知道在哪里定义它,所以我可以在我的所有应用程序中使用它,而不仅仅是一个模型。

标签: phplaravellaravel-5laravel-5.8laravel-helper

解决方案


您可以创建一个Helper.php文件并将composer.json该文件包含为

"files": [
        "app/Helpers/Helper.php",   
]

或者可以添加一个辅助类,如

<?php


namespace App\Helpers;


class Helper
{
    public static function foo()
    {
        return 'foo';
    }
}

config/app.php

'aliases' => [

    ....

    'Helper' => App\Helpers\Helper::class,

]

然后用作Helper::foo();

添加服务提供商,例如

php artisan make:provider HelperServiceProvider 

注册方法

public function register()
{
    require_once app_path() . '/Helpers/Custom/Helper.php';
}

config/app.php

providers = [ 'CustomHelper' => App\Helpers\Custom\Helper::class, ]

'aliases' => [
'CustomHelper' => App\Helpers\Custom\User::class,
]

然后用作

CustomHelper::foo();

推荐阅读