我的帮助文件位于app/Helpers/Helper.php
class Helper {
// Add body class
public static function bodyClass() {
$body_classes = array();
$class = "";
foreach ( \Request::segments() as $segment ) {
if ( is_numeric( $segment ) || empty( $segment ) ) {
continue;
}
$class .= ! empty( $class ) ? "-" . $segment : $segment;
array_push( $body_classes, $class );
}
return ! empty( $body_classes ) ? implode( ' ', $body_classes ) : NULL;
}
}
然后在我的composer.json
中,我自动加载了这个Helper文件:
"autoload": {
"classmap": [
"database"
],
"psr-4": {
"App\\": "app/"
},
"files": [
"app/Helpers/Helper.php"
]
},
然后在我的一个主要观点中,我有这个:
<body class="{{ Helper::bodyClass() }}">
但是我收到一个错误说:
Class 'Helper' not found
我也做了转储自动加载,所以不应该是问题。有人有任何线索吗?
谢谢!
答案 0 :(得分:3)
1。您需要为Helper
类添加命名空间。
<?php
namespace App\Helpers;
class Helper {
...
}
2。如果您想在视图中使用您的课程,那么您需要为您的课程添加别名。
config/app.php
'aliases' => [
...
'Helper' => 'App\Helpers\Helper'
]
完成!
P.s:您不需要将班级添加到composer.json
自动加载中。它不需要。