将Json响应结果限制为php中的前5个



我有一个搜索栏,在搜索我得到所有相关的产品,我想只显示前5个

public function getProducts()
{
if (request()->ajax()) {
$search_term = request()->input('term', '');
$location_id = 1;
$check_qty = request()->input('check_qty', false);
$price_group_id = request()->input('price_group', null);
$business_id = request()->session()->get('user.business_id');
$not_for_selling = request()->get('not_for_selling', null);
$price_group_id = request()->input('price_group', '');
$product_types = request()->get('product_types', []);
$search_fields = request()->get('search_fields', ['name', 'sku']);
if (in_array('sku', $search_fields)) {
$search_fields[] = 'sub_sku';
}
$result = $this->productUtil->filterProduct($business_id, $search_term, $location_id, $not_for_selling, $price_group_id, $product_types, $search_fields, $check_qty);
return json_encode($result);
}
}

您可以使用->limit(5)->get()从查询中仅获得5个产品

使用orderBy('column_name', 'desc' or 'asc')对查询的结果进行排序

您可以使用laravel标准响应json返回响应,而不是在中包装json_encode

return response()->json($result)

最新更新