Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I make global helper functions in laravel 5?

If I wanted to make a currentUser() function for some oauth stuff I am doing where I can use it in a view or in a controller (think rails, where you do helper_method: current_user in the application controller).

Everything I read states to create a helpers folder and add the function there and then that way you can do Helpers::functionName Is this the right way to do this?

Whats the "laravel way" of creating helper functions that can be used in blade templates and controllers?

like image 635
TheWebs Avatar asked Sep 06 '15 03:09

TheWebs


People also ask

What is helper function in Laravel?

What is a Helper Function? A helper function usually comes in handy if you want to add a feature to your Laravel application that can be used at multiple locations within your controllers, views, or model files. These functions can be considered as global functions.

How do you build a lumen helper?

use App\Libraries\Helpers; Also, there is no need to add the extra autoload rule in your composer. json. app/libraries is already in the first rule.


1 Answers

Create a new file in your app/Helpers directory name it AnythingHelper.php An example of my helper is :

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

generate a service provider for your helper by following command

php artisan make:provider HelperServiceProvider 

in the register function of your newly generated HelperServiceProvider.php add following code

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

now in your config/app.php load this service provider and you are done

'App\Providers\HelperServiceProvider', 
like image 101
Khan Shahrukh Avatar answered Sep 16 '22 14:09

Khan Shahrukh