Use View Composers
View composers are callbacks or class methods that are called when a
view is created. If you have data that you want bound to a given view
each time that view is created throughout your application, a view
composer can organize that code into a single location. Therefore,
view composers may function like "view models" or "presenters".
Defining A View Composer :
View::composer('profile', function($view)
{
$view->with('count', User::count());
});
Now each time the profile view is created, the count data will be bound to the view. In your case, it could be for id :
View::composer('myawesomeview', function($view)
{
$view->with('id', 'someId');
});
So the $id will be available to your myawesomeview view each time you create the view using :
View::make('myawesomeview', $data);
You may also attach a view composer to multiple views at once:
View::composer(array('profile','dashboard'), function($view)
{
$view->with('count', User::count());
});
If you would rather use a class based composer, which will provide the benefits of being resolved through the application IoC Container, you may do so:
View::composer('profile', 'ProfileComposer');
A view composer class should be defined like so:
class ProfileComposer {
public function compose($view)
{
$view->with('count', User::count());
}
}
Documentation and you can read this article too.