можно ли назначить переменную внутри массива [‘добавить переменную здесь’] в laravel

#arrays #laravel

#массивы #laravel

Вопрос:

Возможно ли назначить переменную внутри массива[‘$addhere ‘]? Я присвоил значение переменной и хочу поместить его в []

это переменная

 @php
    $order_id=$orderItem->id;
@endphp
  

И я хочу поместить это здесь,

 {{$partialDeliveries[$order_id]->stock_in_qty}}
  

ответ об ошибке

введите описание изображения здесь

Таблица в блейде

 <table class="table table-striped m-b-none" id="orders"  >
                <thead>
                <tr>
                    <th width="">Product Code</th>
                    <th>Product Name</th>
                    <th>Quantity</th>
                    <th>Delivery Date</th>
                    <th>Notes</th>
                </tr>
                </thead>
                <tbody>
                    @foreach($order->orderItems as $orderItem)
                    @php
                        $order_id=$orderItem->id;
                    @endphp
                    <tr>
                        <td>{{ $orderItem->product_code }} {{$order_id}}</td>
                        <td>{{ $orderItem->product_name }} {{$partialDeliveries[$order_id]->stock_in_qty}}</td>
                        {{-- <td> {{$orderItem->quantity}}</td> --}}
                        <td><input type="number" name="stock_in_qty[]" id="stock_in_qty_{{$orderItem->id}}" class="form-control stock_in_qty" min="1" value="{{$orderItem->quantity}}" data-max="{{$orderItem->quantity}}" onkeyup="check(this);"/></td>
                         <script type="text/javascript">
                            var $orderItem_id = {{$orderItem->id}};
                            $('#stock_in_qty_' $orderItem_id).on('mouseup keyup', function () {
                                $(this).val(Math.min({{$orderItem->quantity}}, Math.max(1, $(this).val())));
                            });
                        </script>
                        <td> {{ Form::date('delivery_date[]',today(), ['class' => 'form-control date', 'style' => 'width:200px;','required']) }}</td>
                        <td>{!! Form::text('delivery_note[]', null, ['class'=>'form-control']) !!}
                        @if ($errors->has('delivery_note'))<span class="help-block"><strong>{{ $errors->first('delivery_note') }}</strong></span>@endif
                        </td>          
                    </tr>
                    {!! Form::hidden('product_id[]', $orderItem->product_id) !!}
                    {!! Form::hidden('stock_in_qty[]', $orderItem->quantity) !!}
                    {!! Form::hidden('order_id[]', $order->id) !!}
                    {!! Form::hidden('order_item_id[]', $orderItem->id ) !!}
                    {!! Form::hidden('company_id[]', $order->company->id) !!}
                    {!! Form::hidden('stock_out_qty[]',null) !!}
                    {!! Form::hidden('transfer_to[]', null) !!}
                    {!! Form::hidden('user_id[]',auth()->user()->id ) !!}
                    @endforeach
                </tbody>
            </table>
  

Комментарии:

1. Вы пробовали это и получили ошибку? Поскольку кажется, что это должно работать, вы можете точно использовать динамическую переменную в качестве индекса массива.

2. Привет @nakov, я просто обновляю свой вопрос.

3. Является ли $partialDeliveries коллекцией?

4. Ошибка означает, что у вас нет элемента в 17-м индексе. Поэтому он не может ее извлечь. При создании коллекции убедитесь, что вы используете те же идентификаторы.

5. ах, подождите, я думаю, что мне нужно поместить в него номер цикла. [0], [1], [2] поскольку у меня есть 3 элемента в цикле, это работает. да, я думаю, это то, что мне нужно поместить.