request->collect()
Laravel的
<!-- Syntax highlighted by torchlight.dev -->// Basic usage $input = $request->collect(); $filtered = $input->filter()->map(...);
这是带有复杂输入处理的订单处理系统的示例
<!-- Syntax highlighted by torchlight.dev --><?php namespace App\Http\Controllers; use App\Models\Order; use Illuminate\Http\Request; class OrderController extends Controller { public function bulkProcess(Request $request) { $result = $request->collect() ->reject(fn($item) => empty($item['product_id'])) ->map(function ($item) { return [ 'product_id' => $item['product_id'], 'quantity' => max(1, (int) $item['quantity']), 'price' => $this->calculatePrice($item), 'processed_at' => now() ]; }) ->groupBy('product_id') ->map(function ($group) { return [ 'total_quantity' => $group->sum('quantity'), 'total_value' => $group->sum('price'), 'items' => $group->values() ]; }); return response()->json([ 'processed' => $result->count(), 'summary' => $result ]); } private function calculatePrice($item): float { $basePrice = Product::find($item['product_id'])->price; return $basePrice * $item['quantity']; } }
>
以上是请求使用Laravel的数据收集处理的详细内容。更多信息请关注PHP中文网其他相关文章!