How to define Global Variable or Constant in Laravel

We often need to define global variables/constants for our application, like Status, Conditions, Countries (we can put all countries in table as it will be along array/object), also weekdays, weekends and e.t.c. vary on projects.

Status (Active, Inactive) and Conditions (Ok, Good, Better, Best) or Grade (F, C, D, A, A-, A+), so like these type of variables/constants,  we write same code multiple times. But if we set all of these as Global Variables then we can use these anytime, anywhere in application.

 

 

And here I am presenting how to define GLOBAL Variable/Constant in Laravel 5.2. (This is not the only way, but I like it)

  1. First create a file named constants.php on config directory
  2. And code some variables like below

return [

‘STATUS’ => [

1 => ‘Active’,

0 => ‘Inactive’

],

‘Conditions’ => [

1 => ‘Ok’,

2 => ‘Good,

3 => ‘Better,

4 => ‘Best’

 

],

‘GRADE’ => [

‘A+’ => ‘A+’,

‘A’ => ‘A’,

‘A-’ => ‘A-’,

‘B’ => ‘B’,

‘C’ => ‘C’,

‘D’ => ‘D’,

‘F’ => ‘F’

]

];

  1. Now, how can we use/access this Global Variables? Very easy, and we can also access these variables on view too.

Config::get(‘constants. STATUS’); // it will output status array.

Or, if we want a specific one element then

Config::get(‘constants. GRADE.F’); // output: F

  1. And lastly we can also set Global variable only for the current request. This will not persist.

Config::set(‘constants. Conditions.5’, ‘Not Stable’)

 

And finally – if you like this article please inspire me by posting a comment (at below) for the next article 😉 . And I don’t mind if you want to share among with your friends, bocz. Sharing’s Caring.

 

Credit: google, stackoverflow, Laravel.io, Laravel docs and etc.

Advertisements

Sublime Text Editor – User Preference Setting

If you working in any editor, you would like to set the environment as you want. And in Sublime Text you can set your preferences in a easy way.

– Go to Preferences > Settings – User  and put the below preferences. You can also tweak the settings by blocking/unblocking the setting by double front slash (//) and see the magic 🙂

**keep all settings within curly brackets. And here is my settings 😉

{
“bold_folder_labels”: true, // set the sidebar’s folder name to bold
“caret_style”: “phase”,
“wide_caret”: true, // set the cursor
“color_scheme”: “Packages/User/SublimeLinter/Monokai (SL).tmTheme”,
“fade_fold_buttons”: false,
“font_size”: 11, // set font size of the editor
“tab_size”: 4, // set the tab size to 4 space
“highlight_line”: true, // highlight the line
“highlight_modified_tabs”: true, // highlight the (file) tab if the file is modify/edit
“ignored_packages”:
[

// ignore packages going here
//”Vintage”
],
“line_padding_bottom”: 1, // set the bottom padding of each line
“line_padding_top”: 1, // set the top padding of each line
“word_wrap”: true // set the word wrapper to true to stop horizontal scrolling
}

Let me know your settings in comment.