如何从 Laravel blade 文件中的 Helper 调用静态函数?
How to call static function from Helper in Laravel blade file?
我在路径中有自定义 class:
app/Http/Helpers/Helper/Helper.php
命名空间是:namespace App\Helpers;
它有一个静态方法:
public static function getMonthName($monthNumber)
{
return date("F", mktime(0, 0, 0, $monthNumber, 1));
}
我试图从模板中调用此方法 Laravel:
{{ \App\Http\Helpers\Helper::getMonthName($i) }}
但是不行:
Class 'App\Http\Helpers\Helper' not found
将命名空间更新为:
namespace App\Http\Helpers\Helper;
命名空间必须与class路径相同,因为laravel使用spl_autoload
动态加载classes
像其他人一样,制作 helpers.php
(在根目录中,.env
文件所在的位置)。
if (! function_exists('get_month_name')) {
function get_month_name(int $month)
{
return date('F', mktime(0, 0, 0, $month, 1));
}
}
并在您的 composer.json
中自动加载它:
"autoload": {
"psr-4": {
"App\": "app/"
},
"files": [
"helpers.php"
]
},
现在您可以在代码库的任何地方调用您的辅助函数
如果有人试图在 blade 中使用辅助函数,请确保您执行以下操作。
//composer.json
"files":[
"app/Helpers/Helper.php"
],
//app.php
'aliases'=> [
...
'Helper'=> 'App\Helpers\Helper::class',
]
并且在您的 blade 中您可以使用 if Helper.php
是静态函数
{{ Helper::getStatusColor($item->status) }}
最好将其添加到您的 config/app.php.
'aliases' => [
'Helper' => App\Helpers\Helper::class,
]
我在路径中有自定义 class:
app/Http/Helpers/Helper/Helper.php
命名空间是:namespace App\Helpers;
它有一个静态方法:
public static function getMonthName($monthNumber)
{
return date("F", mktime(0, 0, 0, $monthNumber, 1));
}
我试图从模板中调用此方法 Laravel:
{{ \App\Http\Helpers\Helper::getMonthName($i) }}
但是不行:
Class 'App\Http\Helpers\Helper' not found
将命名空间更新为:
namespace App\Http\Helpers\Helper;
命名空间必须与class路径相同,因为laravel使用spl_autoload
动态加载classes
像其他人一样,制作 helpers.php
(在根目录中,.env
文件所在的位置)。
if (! function_exists('get_month_name')) {
function get_month_name(int $month)
{
return date('F', mktime(0, 0, 0, $month, 1));
}
}
并在您的 composer.json
中自动加载它:
"autoload": {
"psr-4": {
"App\": "app/"
},
"files": [
"helpers.php"
]
},
现在您可以在代码库的任何地方调用您的辅助函数
如果有人试图在 blade 中使用辅助函数,请确保您执行以下操作。
//composer.json
"files":[
"app/Helpers/Helper.php"
],
//app.php
'aliases'=> [
...
'Helper'=> 'App\Helpers\Helper::class',
]
并且在您的 blade 中您可以使用 if Helper.php
是静态函数
{{ Helper::getStatusColor($item->status) }}
最好将其添加到您的 config/app.php.
'aliases' => [
'Helper' => App\Helpers\Helper::class,
]