3

我想使用从我的表中选择一个对象where,如下所示:

$obj = Product::where('column_name', '=', 'string')->get();

但是 $obj 在 json 中。

我怎样才能得到一个正常的对象?

4

3 回答 3

3
$product = Product::where('model','like', '%table%')
    ->orderBy('price', 'desc')
    ->get();


var_dump($product);

会给你雄辩的对象集合,它不是 JSON

var_dump($product->toJson());

会给你 JSON 对象

但是您还应该考虑基本查询。

$product = DB::table('product')->select('id', 'model')
    ->where('product_id' ,  '=' ,  $id)
    ->get();

对于所有对象的集合,请使用:

$products = Product::all();

ETC

$product = Product::find($id);
于 2013-07-20T17:19:00.443 回答
3

使用first()方法获取对象(假设您只需要处理一个结果)。

使用get()方法将返回一个数组,因为查询构建器不知道您是否只有一个或多个结果。

希望这可以解决您的问题。

于 2015-07-01T03:24:24.193 回答
0

如果您将 Eloquent 对象返回给客户端,那么它将表示为 JSON(非常适合 API)。var_dump()看到它实际上是一个 Eloquent 对象。

于 2013-07-23T03:17:35.033 回答