欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

如何用Laravel包含你自己的幫助函數(shù)

 更新時間:2021年05月27日 11:52:15   作者:八重櫻  
你可能想創(chuàng)建一個在應(yīng)用的任何地方都可以訪問的函數(shù),這個篇文章將帶你解決此問題,感興趣的同學(xué),可以參考下。

很多教程都會說,你在 composer.json 這個文件中通過添加一個自動加載的文件,就可以實現(xiàn)這個需求。但我認為這不是一個好的方式,當你在 helpers.php 文件中添加了更多的函數(shù)時,可讀性將變得很差。

下面我將介紹一種方式,讓你可以定義很多文件,來包含不同的函數(shù)。這將讓我們的程序更加整潔和更具可讀性。

首先創(chuàng)建一個 HelperServiceProvider.php 服務(wù)提供者文件:

php artisan make:provider HelperServiceProvider

使用上面命令,你將在 app\Providers 文件中生成 HelperServiceProvider.php

你可以簡單的移除 boot() 方法,我們在這兒不會使用它。

在 register() 方法中我們添加以下代碼:

public function register()
{
foreach (glob(app_path('Helpers') . '/*.php') as $file) {
require_once $file;
}
}

這個循環(huán)將會遍歷 app/Heplers 目錄下的所有文件,你可能已經(jīng)猜到了,現(xiàn)在你可以在這個目錄下隨便創(chuàng)建文件,它們將會被加載到你的應(yīng)用程序中,這些幫助函數(shù)在你的代碼的任何地方都可以被訪問(views, models, controllers...)

我們還需要加載這個服務(wù)提供者,打開 config/app.php,然后將 HelperServiceProvider 放在你的 AppServiceProvider 上面

...
App\Providers\HelperServiceProvider::class,
App\Providers\AppServiceProvider::class,
App\Providers\AuthServiceProvider::class,
App\Providers\BroadcastServiceProvider::class,
...

現(xiàn)在讓我們創(chuàng)建一個簡單的函數(shù),在 app/Helpers 目錄中創(chuàng)建一個 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_exists 檢測這個函數(shù)是否存在。

現(xiàn)在,你可以在應(yīng)用程序的任何你喜歡的位置使用幫助函數(shù) carbon()?,F(xiàn)在,如果您需要另一個返回特定格式的函數(shù)(僅針對本教程的用例),則可以在同一文件(Carbon.php)中輸入該函數(shù):

<?php

/**
* Carbon helper
*
* @param $time
* @param $tz
*
* @return Carbon\Carbon
*/
function carbon($time = null, $tz = null)
{
return new \Carbon\Carbon($time, $tz);
}
function carbonFormatted($time = null, $tz = null)
{
return carbon($time, $tz)->format('Y-m-d')
}

現(xiàn)在,您可以開始使用自己的PHP文件填充 app / Helpers目錄,其中包含您經(jīng)常使用的幫助程序 

以上就是如何用Laravel包含你自己的幫助函數(shù)的詳細內(nèi)容,更多關(guān)于用Laravel包含你自己的幫助函數(shù)的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評論