Laravel Eloquent /流利

sil*_*min 9 laravel

从Eloquent模型中获取所有行时:

$pin = Pin::all();
Run Code Online (Sandbox Code Playgroud)

我得到一个看起来像这样的数组:

array(2) {
  [0]=>
  object(Pin)#36 (5) {
    ["attributes"]=>
    array(9) {
      ["id"]=>
      string(1) "2"
      ["creator"]=>
      string(1) "1"
    ["original"]=>
    array(9) {
      ["id"]=>
      string(1) "2"
      ["creator"]=>
      string(1) "1"
    }
    ["relationships"]=>
    array(0) {
    }
    ["exists"]=>
    bool(true)
    ["includes"]=>
    array(0) {
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

就像我使用Fluent一样:

$pin = DB::table('pins')->get();
Run Code Online (Sandbox Code Playgroud)

我得到一个没有"属性","原始","现实"指数的普通数组.

我如何使用Eloquent以便返回像FLuent那样的Plain Array?

Raf*_*lks 11

它非常简单.

$pins = Pin::get();
foreach($pins as $p){
 $pin[] = $p->to_array();
}
Run Code Online (Sandbox Code Playgroud)

或者如果您想发送JSON对象,请尝试使用

$pins = Pin::all();
return Response::eloquent($pins);
Run Code Online (Sandbox Code Playgroud)

或者如果要将数组转换为json输出而不是使用

return Response::json(array('name' => 'Batman'));
Run Code Online (Sandbox Code Playgroud)