我有一些php行,会在我的应用程序中经常使用。所以我想构建一个函数并在我的应用程序中的每个位置调用它。我的功能可能是:
static function array_matiere($id_ecole) {
return $something;
}
我尝试将此代码放在控制器中,然后调用它:
$liste_matieres = MatieresController::array_matieres(Session::get('id_ecole'));
它有效,但在哪里放这种功能?在控制器?在方法文件中?什么是最佳做法?
感谢您的回复。
多米尼克
答案 0 :(得分:2)
有多种方法可以实现这一点。看这里
方法1 Laravel Expert(JeffreyWay)强烈建议使用此方法
如果你的助手功能类似于laravel 5的工作方式,即Illuminate/Support/helpers.php
你可以创建一个helpers.php
并让作曲家为你做自动加载。
编辑composer.json
文件并将文件添加到自动加载密钥。在我的示例中,我的应用程序称为Tasky,因此只需添加文件键和引用helpers.php
。
"autoload": {
"classmap": [
"database"
],
"psr-4": {
"Tasky\\": "app/"
},
"files": [
"app/Support/helpers.php"
]
},
这样您只需在app/Support/helpers.php
内创建文件,所有基于函数的常用视图助手或其他帮助程序都可以在此处。如果你采用基于类的方法,那么上面的内容很棒。
然后记得只运行一次。
$ composer dumpautoload
方法2
答案 1 :(得分:0)
每当你需要在你的应用程序中包含一段提供某些功能的代码时,Laravel的最佳方法是在app / Services中创建Service类,然后你可以在应用程序的任何地方使用该类
use App\Services\YourServiceName;