代码之家  ›  专栏  ›  技术社区  ›  Martney Acha

落叶松前臂环

  •  1
  • Martney Acha  · 技术社区  · 6 年前

    我需要显示迭代数组的前一个值,这里是代码

    <tr>
        <th></th>
        <th>Customer ID</th>
        <th>Customer Name</th>
        <th>Delivery Address</th>
        <th>Contact No.</th>
        <th>Zip Code</th>
        <th>Payment Terms</th>
        <th>Credit Limit</th>
    </tr>
    <?php $previousValue = null; ?>
    @foreach($customer_count as $key => $value)
        <tr>
            <td>{{$previousValue=$value->customer_name }}</td>
            <td>{{ $value->id }}</td>
            <td>{{ $value->customer_name }}</td>
            <td>{{ $value->delivery_address }}</td>
            <td>{{ $value->contact_number }}</td>
            <td>{{ $value->area_id }}</td>
            <td>{{ $value->payment_term_id }}</td>
            <td>{{ $value->credit_limit }}</td>
        </tr>
    @endforeach
    

    我需要在迭代中显示以前的客户名称? 你知道怎么做吗?

    4 回复  |  直到 6 年前
        1
  •  2
  •   Niklesh Raut    6 年前

    在末尾设置值,我为第一个设置为空

     @foreach($customer_count as $key => $value)
          <tr>
               <td>{{$previousValue or ""}}</td>
               .....
               .....
          </tr>
          <?php $previousValue = $value->customer_name ?>
      @endforeach
    
        2
  •  0
  •   parker_codes    6 年前

    $customer_count[$key-1]

    当然,您需要检查它是否存在,或者使用空的coalesce操作符或其他什么,所以:

    @php
    
    $previous = $customer_count[$key - 1] ?? false;
    
    @endphp
    

    然后使用:

    @if( $previous ) 
    ... some stuff ...
    @endif
    

    任何需要注射的地方。

        3
  •  0
  •   Tai Le    6 年前

    请试试这个

    <td>{{ (!$loop->first) ? $customer_count[$key - 1]->customer_name : '' }}</td>
    

    您可以阅读有关foreach循环的更多信息 here .

        4
  •  0
  •   DsRaj    6 年前

    首先将前一个值设置为空,然后在 $previousValue

    <?php $previousValue = '';?>
    @foreach($customer_count as $key => $value)
        <tr>
            <td>{{ $previousValue }}</td>
            <td>{{ $value->id }}</td>
            <td>{{ $value->customer_name }}</td>
            <td>{{ $value->delivery_address }}</td>
            <td>{{ $value->contact_number }}</td>
            <td>{{ $value->area_id }}</td>
            <td>{{ $value->payment_term_id }}</td>
            <td>{{ $value->credit_limit }}</td>
        </tr>
        <?php $previousValue = $value->customer_name; ?>
    @endforeach