無涯教程: Laravel 8 - 自定義函式介紹

daxuesheng發表於2021-09-09

我們已知laravel 8還為array,url,route,path等提供了輔助函式。但是,並非我們需要的所有函式。也許一些基本的輔助函式,例如我們專案中的日期格式。這是很多時候,我們需要建立自己的輔助函式,因此本章將討論如何實現。

步驟1:建立helpers.php檔案

在此步驟中,您需要在laravel專案中建立app/helpers.php,並將以下程式碼放入該檔案中:

app/helpers.php

format($date_format);    
}
   
function productImagePath($image_name)
{
    return public_path('images/products/'.$image_name);
}

步驟2:在composer.json檔案中新增檔案路徑

在這一步中,您必須放置helpers檔案的路徑,因此基本上開啟composer.json檔案,並將以下程式碼放入該檔案中:

composer.json

...
  
"autoload": {
    "psr-4": {
        "App\": "app/",
        "Database\Factories\": "database/factories/",
        "Database\Seeders\": "database/seeders/"
    },
    "files": [
        "app/helpers.php" 
    ]
},
  
...

步驟3:執行命令

這是最後一步,您應該只執行以下命令:

composer dump-autoload

好的,現在您終於可以使用您的自定義幫助程式函式,如changeDateFormate()和productImagePath(),將為您提供如何使用自定義程式函式的示例。

在路由中使用:

Route::get('helper', function(){
    $imageName = 'example.png?imageView2/0/q/75|watermark/2/text/bGVhcm5may5jb20=/font/Y29uc29sYXM=/fontsize/400/fill/I0YxMTQxNA==/dissolve/100/gravity/SouthEast/dx/10/dy/10';
    $fullpath = productImagePath($imageName);
  
    dd($fullpath);
});
  
Route::get('helper2', function(){
    $newDateFormat = changeDateFormate(date('Y-m-d'),'m/d/Y');
  
    dd($newDateFormat);
});

輸出:

"/var/www/me/laravel8/blog/public/images/products/example.png?imageView2/0/q/75|watermark/2/text/bGVhcm5may5jb20=/font/Y29uc29sYXM=/fontsize/400/fill/I0YxMTQxNA==/dissolve/100/gravity/SouthEast/dx/10/dy/10"
"09/14/2020"

在檢視檔案中使用:

$imageName = 'example.png?imageView2/0/q/75|watermark/2/text/bGVhcm5may5jb20=/font/Y29uc29sYXM=/fontsize/400/fill/I0YxMTQxNA==/dissolve/100/gravity/SouthEast/dx/10/dy/10';
$fullpath = productImagePath($imageName);
print_r($fullpath);
{{ changeDateFormate(date('Y-m-d'),'m/d/Y')  }}


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4692/viewspace-2807104/,如需轉載,請註明出處,否則將追究法律責任。

相關文章