2017-03-20 18 views
1

Laravel 5.3を使用してlaravelの新機能です。 ユーザーログイン のlaravelモデルにcheck()関数を作成しています。ここではすべてのデータフォームデータベースを使用してデフォルトの$this->all();を使用しています。これは大きなマルチデシジョンの 配列を返します。Laravel属性データの取得

Illuminate\Database\Eloquent\Collection Object 
(
    [items:protected] => Array 
     (
      [0] => App\wn_users Object 
       (
        [table:protected] => wn_users 
        [timestamps] => 
        [fillable:protected] => Array 
         (
          [0] => role_id 
          [1] => firstname 
          [2] => lastname 
          [3] => username 
          [4] => email 
          [5] => password 
          [6] => companyname 
          [7] => country_id 
          [8] => description 
          [9] => ip 
          [10] => update_date 
          [11] => status 
         ) 

        [connection:protected] => 
        [primaryKey:protected] => id 
        [keyType:protected] => int 
        [incrementing] => 1 
        [with:protected] => Array 
         (
         ) 

        [perPage:protected] => 15 
        [exists] => 1 
        [wasRecentlyCreated] => 
        [attributes:protected] => Array 
         (
          [user_id] => 1 
          [role_id] => 1 
          [firstname] => Aman kumar 
          [lastname] => -- 
          [username] => Aman kumar 
          [email] => [email protected] 
          [password] => e10adc3949ba59abbe56e057f20f883e 
          [companyname] => Imax 
          [country_id] => 123 
          [description] => Testing 
          [ip] => 192.168.1.1 
          [update_date] => 2017-03-20 
          [status] => 0 
          [created_at] => 
          [updated_at] => 
         ) 

        [original:protected] => Array 
         (
          [user_id] => 1 
          [role_id] => 1 
          [firstname] => Aman kumar 
          [lastname] => -- 
          [username] => Aman kumar 
          [email] => [email protected] 
          [password] => e10adc3949ba59abbe56e057f20f883e 
          [companyname] => Imax 
          [country_id] => 123 
          [description] => Testing 
          [ip] => 192.168.1.1 
          [update_date] => 2017-03-20 
          [status] => 0 
          [created_at] => 
          [updated_at] => 
         ) 

        [casts:protected] => Array 
         (
         ) 

        [dates:protected] => Array 
         (
         ) 

        [dateFormat:protected] => 
        [appends:protected] => Array 
         (
         ) 

        [events:protected] => Array 
         (
         ) 

        [observables:protected] => Array 
         (
         ) 

        [relations:protected] => Array 
         (
         ) 

        [touches:protected] => Array 
         (
         ) 

        [hidden:protected] => Array 
         (
         ) 

        [visible:protected] => Array 
         (
         ) 

        [guarded:protected] => Array 
         (
          [0] => * 
         ) 

       ) 

     ) 

) 

しかし、私はほしいと思っています。'attributes:protected' laravelのフォーム全体配列。私はすでに

echo $data = $this->getAttributes()['firstname'];

を試してみましたが、これは

Undefined index: firstname 

は私の問題にあなたの助けと時間を事前に

感謝を解決するために私を助けてください、エラーを返します。

答えて

1

非常に単純な方法:

$arr = $this->all()->toArray(); 

var_dump($arr); // oh~ array data! 
0

だから、プロパティのコレクションを持っています。そして、あなたはちょうど$collection->first()->firstnameのようにそれらにアクセスしたり、あなたはすべての項目でいくつかの操作を行いたい場合は、各方法を使用することができます。

$collection = $collection->each(function ($item, $key) { 
    $item->firstname .= ' Smith'; 
}); 
関連する問題