私は、ユーザーのニーズに基づいて写真をアップロードする必要がある状況に陥っています。ユーザーは、1つ、2つ、または3つ以上の++の子を持つことができます。だから彼の子供の画像をアップロードするときにfor
ループを使用しています。ここに私の形式は次のとおりです。forループを使用したLaravel複数の画像のアップロード
@for($i=1;$i<=$ticket->children_count;$i++)
<div class="form-group">
<label for="">Child {{ $i }} Name:</label>
<input type="text" name="child_name_{{$i}}" value="" required="" class="form-control">
</div>
<div class="form-group">
<label for="">Child {{ $i }} Photo:</label>
<input type="file" name="child_picture_{{$i}}" value="" required="">
</div>
@endfor
私はバックエンドからのファイルを受信したいが、何とか私はnullを取得しています。ここ コントローラ内部for
ループである:
for ($i=1; $i <= $ticket->children_count ; $i++) {
$file = $request->file("child_picture_.$i");
dd($request->child_name_.$i);
}
上記のコードは、$ Iの値だけを返します。ファイルを正しく受信するにはどうすればよいですか?
dd($request->child_name_.$i);
// php thinks that you are providing two variables:
// $request->child_name_ and $i
へ:
dd($request->{'child_name_'.$i});
// makes sure php sees the whole part
// as the name of the property
編集
とするために、それはあなたが以下のように置き換える必要があり
これは名前のために働いたが、$ request-> file()の部分の中での出力方法は? –
私の更新された答えを見てください。 –
本当にありがとうございました。これは本当に助けになりました –