【问题标题】:How to get value from input fields with two dimensional arrays in Laravel如何从 Laravel 中的二维数组的输入字段中获取值
【发布时间】:2020-06-22 17:25:45
【问题描述】:

我有动态创建的输入字段是这样的:

<input type="text" name="attribute_value[][123]" class="form-control" required="">
<input type="text" name="attribute_value[][123]" class="form-control" required="">

<input type="text" name="attribute_value[][167]" class="form-control" required="">
<input type="text" name="attribute_value[][167]" class="form-control" required="">
<input type="text" name="attribute_value[][167]" class="form-control" required="">

<input type="text" name="attribute_value[][166]" class="form-control" required="">

现在我有 123、167、166 来自我之前的计算,现在我想获取所有具有 163、167、166 的字段,因为我正在使用以下代码,其中键包含 123、167、166 作为示例也可以包含更多或任何其他值:

 foreach ($request->input('attribute_value.*'.$key)  as $key => $value) {

                      print_r($key);
                      print_r($val);

                    }

【问题讨论】:

    标签: php laravel laravel-5


    【解决方案1】:

    尝试打印第一维索引:

    <input type="text" name="attribute_value[0][123]" class="form-control" required="">
    <input type="text" name="attribute_value[1][123]" class="form-control" required="">
    
    <input type="text" name="attribute_value[0][167]" class="form-control" required="">
    <input type="text" name="attribute_value[1][167]" class="form-control" required="">
    <input type="text" name="attribute_value[2][167]" class="form-control" required="">
    
    <input type="text" name="attribute_value[0][166]" class="form-control" required="">
    

    或者只是为第二个维度制作 []:

    <input type="text" name="attribute_value[123][]" class="form-control" required="">
    <input type="text" name="attribute_value[123][]" class="form-control" required="">
    
    <input type="text" name="attribute_value[167][]" class="form-control" required="">
    <input type="text" name="attribute_value[167][]" class="form-control" required="">
    <input type="text" name="attribute_value[167][]" class="form-control" required="">
    
    <input type="text" name="attribute_value[166][]" class="form-control" required="">
    
    // in controller
    foreach ($request->input('attribute_value')  as $key => $value) {
        foreach ($value as $key2 => $value2) {
            // code here
        }
    }
    

    【讨论】:

    • 如果我将第二个索引留空而不是第一个,它会产生任何问题吗?
    • 最后一个索引将自动以数组顺序 0,1,... 但第一个不会
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多