Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

List all registered variables inside a Laravel view

I am using Laravel 5. I would like to know which are all variables passed to a view inside the view itself.

Since all variables are in the view scope I thought I could use the generic PHP function: get_defined_vars(); http://php.net/manual/en/function.get-defined-vars.php

Something like this:

  // resources/view/home.blade.php   <html>   <body>        <?php print_r(get_defined_vars()); ?>   </body>   </html> 

But I would like to know if there is a better way (something like View::getData())

Note: get_defined_vars() deosn't work becausee it returns hundreds of useless variables (Laravel components)

This is a snippet (partial) using print_r(get_defined_vars()) (i think it goes in infinite recursion loop):

      Array (     [__path] => C:\net\laravel\storage\framework\views/8e030a77b0bdbacc2c4182fc04420d1d     [__data] => Array         (             [__env] => Illuminate\View\Factory Object                 (                     [engines:protected] => Illuminate\View\Engines\EngineResolver Object                         (                             [resolvers:protected] => Array                                 (                                     [php] => Closure Object                                         (                                             [this] => Illuminate\View\ViewServiceProvider Object                                                 (                                                     [app:protected] => Illuminate\Foundation\Application Object                                                         (                                                             [basePath:protected] => C:\net\laravel                                                             [hasBeenBootstrapped:protected] => 1                                                             [booted:protected] => 1                                                             [bootingCallbacks:protected] => Array                                                                 (                                                                     [0] => Closure Object                                                                         (                                                                             [static] => Array                                                                                 (                                                                                     [instance] => Illuminate\Bus\BusServiceProvider Object                                                                                         (                                                                                             [defer:protected] => 1                                                                                             [app:protected] => Illuminate\Foundation\Application Object  *RECURSION*                                                                                         )                                                                                  )                                                                              [this] => Illuminate\Foundation\Application Object  *RECURSION*                                                                         )                                                                      [1] => Closure Object                                                                         (                                                                             [static] => Array                                                                                 (                                                                                     [instance] => Illuminate\Translation\TranslationServiceProvider Object                                                                                         (                                                                                             [defer:protected] => 1                                                                                             [app:protected] => Illuminate\Foundation\Application Object  *RECURSION*                                                                                         )                                                                                  )                                                                              [this] => Illuminate\Foundation\Application Object  *RECURSION*                                                                         )                                                                  )                                                              [bootedCallbacks:protected] => Array                                                                 (                                                                 )                                                              [terminatingCallbacks:protected] => Array                                                                 (                                                                 )                                                              [serviceProviders:protected] => Array                                                                 (                                                                     [0] => Illuminate\Events\EventServiceProvider Object                                                                         (                                                                             [app:protected] => Illuminate\Foundation\Application Object  *RECURSION*                                                                             [defer:protected] =>                                                                          ) 
like image 754
giò Avatar asked Mar 19 '15 14:03

giò


Video Answer


2 Answers

Use the dd helper:

{{ dd(get_defined_vars()) }} 

Read more: https://laravel.com/docs/5.4/helpers#method-dd

Update (thx, @JoeCoder): you can further cutdown on the "useless" variables by doing:

{{ dd(get_defined_vars()['__data']) }} 
like image 112
Limon Monte Avatar answered Sep 21 '22 05:09

Limon Monte


Kind of the same, but a bit tidier :

{{ dd($__data) }} 
like image 29
Leon Avatar answered Sep 18 '22 05:09

Leon