unisharp/laravel-datacarrier

Handle data and let it live in global scope

Package info

github.com/UniSharp/laravel-datacarrier

pkg:composer/unisharp/laravel-datacarrier

Statistics

Installs: 757

Dependents: 1

Suggesters: 0

Stars: 1

Open Issues: 0

1.0.4 2016-06-29 12:54 UTC

Requires

Requires (Dev)

Suggests

None

Provides

None

Conflicts

None

Replaces

None

MIT 98437d3abcd3e689f45d22a2c17b19716e56d788

dataapiviewlaravel

This package is auto-updated.

Last update: 2026-06-15 17:48:32 UTC


README

👁 Build Status
👁 Version
👁 License
👁 Total Downloads

Introduction

Provide an object as Facade to put all global variables togetther, clean your code. Normally we use it to passing variables from Controller to View.

And you can extend your formating method to help you format global data

Install Data Carrier

composer.json:

"require" : {
 "unisharp/laravel-datacarrier" : "~1.0"
}, 
"repositories": {
 "type": "git",
 "url": "https://github.com/UniSharp/laravel-datacarrier.git
}

save it and then

composer update 

Set ServiceProvider and Set Facade

in config/app.php:

  • ServiceProfider

     Unisharp\DataCarrier\DataCarrierServiceProvider::class,
    
  • alias

     'DataCarrier' => Unisharp\DataCarrier\DataCarrierFacade::class,
    

Usage

  • get and set global data

    you can use Facade to set and get items

     \DataCarrier::set('key', 1); // ['a' => 1]
    
     \DataCarrier::get('key'); // 1
    
     // you can set a default value for get method
    
     \DataCarrier::get('key', 0); // if you cannot get it, it will return 0
    
     $var = d('key', 0); // Quick access by d() helper.
     
     \DataCarrier::all(); // it will get an array with all items
    

    you can also use dot to seperate array

     # [ 
     # 'a' => [
     # 'b' => 'value'
     # ]
     # ]
     
     \DataCarrier::get('a.b'); // 'value'
    
  • customize your format method (Add method into Data Carrier)

     \DataCarrier::extend('format', function ($data) {
     return number_format($data);
     })
    
  • format your data

     # ['num' => '100000']
     \DataCarrier::format('num') // 100,000
    

Helper can use helper to set, get your data

  • get, set function

     carrier_set('num', 1); // ['a' => 1]
     carrier_get('num'); // 1
    
  • use carrier() to muniplate container

     carrier() // it's just return App::make('DataCarrier')
    

Another way to work with DataCarier

  • get, set can replace by it

     carrier('num')->get();
     carrier('num')->set(5);
    
  • extend your formating method

     carrier()->extend('format', function ($data) {
     return number_format($data);
     })
    
  • use your formatting method

     carrier('num')->format(); // it will return formating result