我想使用从我的表中选择一个对象where
,如下所示:
$obj = Product::where('column_name', '=', 'string')->get();
但是 $obj 在 json 中。
我怎样才能得到一个正常的对象?
$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);
使用first()
方法获取对象(假设您只需要处理一个结果)。
使用get()
方法将返回一个数组,因为查询构建器不知道您是否只有一个或多个结果。
希望这可以解决您的问题。
如果您将 Eloquent 对象返回给客户端,那么它将表示为 JSON(非常适合 API)。var_dump()
看到它实际上是一个 Eloquent 对象。