2017-04-18 24 views
1

結果、私はdatabase.Myクエリ私の知識$tests_detailsのよう
Laravel 5雄弁モデル

$tests_details = Previous_Mocks::where($data)->orderBy('sno', 'desc')->get(); 

からデータを取得するために、雄弁なモデルを使用していたオブジェクト(結果)の配列を返しますが、私はis_array($tests_details)をエコーするときには戻っています偽それが配列私はcount($test_details)をエコーするとき、is_object($td)ため1 returingさ

foreach ($tests_details as $td) 
       { 
        echo is_object($td); 
        echo "<br/>"; 
       } 

コード下正しいcount.Seeを示しているないことを意味します。私は以下のprint_r機能を使用して$tests_detailsを印刷するとき、私は enter image description here

を取得していますし、$tests_details[0]->edateをエコーされたとき、それは適切な出力を示しているし、すべてが正常に動作して出力されます。しかし、私はなぜの雄弁が、通常のオブジェクトの代わりにimageに示されたフォーマットでデータを返したのかを知りたがっています。私はlaravelを初めて使っていて、現在laravel 5.0を使っています。

+0

@Mayanakは、あなたの質問のために非常に明確にそれを説明しました。しかし、結果を配列として返すことを望むなら、$ tests_details = Previous_Mocks :: where($ data) - > orderBy( '​​sno'、 'desc') - > toArray(); – manian

答えて

3

データ復帰Previous_Mocksモデルはコレクションオブジェクトです。雄弁で返さ

すべてのマルチ結果セットは、結果 getメソッド経由で取得またはリレーションシップを介してアクセスを含む を照らし\データベース\雄弁\コレクションオブジェクトのインスタンスです。 EloquentコレクションオブジェクトはLaravelベースコレクションを拡張しているため、 は、Eloquentモデルの基本配列 で流暢に動作するために使用された数多くのメソッドを自然に継承します。

しかし、コレクションは配列よりもはるかに強力で、直感的なインターフェイスを使用して連鎖されるさまざまなマップ/リダクション操作が公開されています。

Eloquent Collection Reference

+0

上記のイメージ(雄弁なコレクションオブジェクト)に示されているフォーマットでデータベースから10000以上の行が得られたとしますと効率的ですか? – prudhvi259

+0

はい、効率的です –