Вы можете использовать точечную запись и $request->filled($keys)
для достижения этой цели ...
$request->filled(['inventory.0.amount', 'inventory.0.expiry_date'])
Вернет true
, если сумма и expiry_date присутствуют и не пусты.
Например, если вы хотите выполнить проверку в вашем контроллере ...
use Illuminate\Http\Request;
// ...
class YourController extends Controller
{
public function store(Request $request)
{
if ($request->filled(['inventory.0.amount', 'inventory.0.expiry_date'])) {
// Both amount and expiry_date are present and not empty...
// You can also use the request() helper if you don't want inject the Request class...
}
}
}
Я бы также предположил, что если у вас нет нескольких предметов инвентаря, т.е. inventory[n]['amount']
- вы меняете имя ввода на inventory[amount]
.
Это означает, что вы можете делать следующее:
$request->filled('inventory.amount') // or (isset($input['inventory']['amount']) && ! empty($input['inventory']['amount']))
Редактировать
filled()
был введен в 5.5, его следует заменить на has()
в 5.4.