php - 如何在 laravel 5 中创建全局辅助函数?

标签 php laravel-5 laravel-blade controllers helpers

如果我想为我正在做的一些 oauth 东西创建一个 currentUser() 函数,我可以在 View 或 Controller 中使用它(想想 rails,你在哪里做 helper_method : current_user 在应用程序 Controller 中)。

我读到的所有内容都表明要创建一个 helpers 文件夹并在其中添加函数,然后您就可以这样做 Helpers::functionName 这是正确的方法吗?

创建可用于 Blade 模板和 Controller 的辅助函数的“laravel 方式”是什么?

最佳答案

在您的 app/Helpers 目录中创建一个新文件,将其命名为 AnythingHelper.php 我的 helper 的一个例子是:

<?php
function getDomesticCities()
{
$result = \App\Package::where('type', '=', 'domestic')
    ->groupBy('from_city')
    ->get(['from_city']);

return $result;
}

通过以下命令为您的助手生成服务提供者

php artisan make:provider HelperServiceProvider

在你新生成的HelperServiceProvider.php的注册函数中添加如下代码

require_once app_path('Helpers/AnythingHelper.php');

现在在你的 config/app.php 中加载这个服务提供者,你就完成了

'App\Providers\HelperServiceProvider',

关于php - 如何在 laravel 5 中创建全局辅助函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32419619/

相关文章:

php - Codeigniter 和 Facebook PHP SDK - 错误发布到用户墙上

php - 从定义的子集中搜索列中值的所有组合

php - 在 PHP 中对数组的所有值使用通用 if 语句

php - 如何使用谷歌云存储作为 Laravel 5 文件系统?

php - Laravel View 、布局和变量传递

php - Laravel 5.5 使用参数从 Blade View 调用 Controller 函数

php - 从mysql读取列时尝试获取非对象的属性

php - 重定向路由以在 laravel 中进行验证

php - Laravel 5 无需密码登录

javascript - 如何在 Laravel Blade 中的 React 组件中获取 Laravel 验证错误