How to get keys name from array in laravel

49,589

Solution 1

You can make use of array_keys to get all attributes from a model.

$users = Users::all();
$user = $users->first();
$attributes = array_keys($user->toArray());

Alternatively you can use this approach to get the column names based from a certain table in your database.

Solution 2

Now you can just use the ->keys() method from a collection.

$fruits = collect(['orange' => 15, 'lemon' => 75]);

$keys = $fruits->keys();

// ['orange', 'lemon']

See more at https://laravel.com/docs/master/collections#method-keys

Share:
49,589
Mohammed Saqib Rajput
Author by

Mohammed Saqib Rajput

Updated on July 31, 2022

Comments

  • Mohammed Saqib Rajput
    Mohammed Saqib Rajput almost 2 years

    I want to get my table's column name. when i use model::all();

    Users::all();
    
    Illuminate\Database\Eloquent\Collection Object 
    (
        [items:protected] => Array
            (
                [0] => Users Object
                    (
                        [table:protected] => users
                        [hidden:protected] => Array
                            (
                                [0] => password
                                [1] => remember_token
                            )
    
                        [fillable] => Array
                            (
                            )
    
                        [connection:protected] => 
                        [primaryKey:protected] => id
                        [perPage:protected] => 15
                        [incrementing] => 1
                        [timestamps] => 1
                        [attributes:protected] => Array
                            (
                                [id] => 1
                                [first_name] => Mohammed Saqib
                                [last_name] => Rajput
                                [email] => [email protected]
                                [dob] => 2015-06-18 00:00:00
                                [mobile] => 03006710419
                                [status] => inactive
                            )
    
                        [original:protected] => Array
                            (
                                [id] => 1
                                [first_name] => Mohammed Saqib
                                [last_name] => Rajput
                                [email] => [email protected]
                                [dob] => 2015-06-18 00:00:00
                                [mobile] => 03006710419
                                [status] => inactive
                            )
    
                        [relations:protected] => Array
                            (
                            )
    
                        [visible:protected] => Array
                            (
                            )
    
                        [appends:protected] => Array
                            (
                            )
    
                        [guarded:protected] => Array
                            (
                                [0] => *
                            )
    
                        [dates:protected] => Array
                            (
                            )
    
                        [touches:protected] => Array
                            (
                            )
    
                        [observables:protected] => Array
                            (
                            )
    
                        [with:protected] => Array
                            (
                            )
    
                        [morphClass:protected] => 
                        [exists] => 1
                    )
    
            )
    
    )
    
  • M Amir Shahzad
    M Amir Shahzad about 5 years
    want to get key with where the collection is that possible??? $collection = Tracking::confirmedNotDel() ->groupBy('oppor_id') ->selectRaw('oppor_id, sum(logged_mins)/60 as logged_hours') ->get(); $collection = collect($collection); $data = $collection->where('oppor_id', $oppr->id); dd($data); //key of that object as i want to get row number