[PHP][Laravel] フォームから送信された配列をintにキャストする方法

スポンサーリンク

概要

フォームから送信された値は数値であっても文字列として扱われる。
array_map関数の第1引数(コールバック)にintval関数、第2引数にフォームから送信された配列、を指定するとint配列を生成することができる。

$numbers = array_map('intval', $request->input('numbers'));

Laravel

コントローラで以下のようにする。

public function index(Request $request): View
{
  $numbers = array_map('intval', $request->input('numbers'));
  return view('index.index', ['numbers' => $numbers]);
}

コメント