【问题标题】:Laravel foreach with 2 key/pair functionsLaravel foreach 具有 2 个键/对功能
【发布时间】:2019-08-26 07:08:30
【问题描述】:

我有多个具有相似键/对集的数组。我想使用 foreach 循环遍历它们并在每个页面元素中打印 2 个。

套装:

 <div class="page_cargovolumes cy_detail">
  @foreach ($cargovolumes_cy as $cargos_cy)
   {!! $cargos_cy !!}
  @endforeach
</div>
<div class="page_cargovolumes ly">
 @foreach ($cargovolumes_ly as $cargos_ly)
  {!! $cargos_ly !!}
 @endforeach
</div>

我怎样才能将两者的循环输出使用到包含两者的 1 个元素中?

想要的结果:

<div class="page_cargovolumes ly">
  {!! $cargos_cy !!}
  <br>
  {!! $cargos_ly !!}
</div>

例如。 db数据如下:

public function cargovolumes_cy() {
    global $wpdb;

    $cargodb = new $wpdb('root', 'expw', 'exdb', 'localhost');
    $currentmonthtxt = date('Y');
    $currentyear = date('Y');
    $cargovolume_cy = array();

    foreach($cargodb->get_results(
        "
        SELECT    *, SUM(tonneCount)
        FROM      volumes
        WHERE year = $currentyear
        GROUP BY terminal, year, month
        "
    )  as $key => $row) {
        $tonnages = $row->tonneCount;
        $terminal = $row->terminal;
        $year = $row->year;
        $month = $row->month;
        $cargovolume_cy[] = 
        '<div class="cargovolumes_cy"><h4>'.$terminal.' </h4>'. 
        '<span class="cv-year">Year: '.$year.' </span>'. 
        '<span class="cv-month"> Month: '.$month.' </span>'. 
        '<span class="cv-tonnage"> Tonnage: '.$tonnages.' </span></div>';
    };

    return $cargovolume_cy;

}

public function cargovolumes_ly() {
    global $wpdb;

    $cargodb = new $wpdb('root', 'expw', 'exdb', 'localhost');
    $currentmonthtxt = date('Y');
    $currentyear = date('Y');
    $cargovolume_ly = array();

    foreach($cargodb->get_results(
        "
        SELECT    *, SUM(tonneCount)
        FROM      volumes
        WHERE year = $currentyear -1
        GROUP BY terminal, year, month
        "
    )  as $key => $row) {
        $tonnages = $row->tonneCount;
        $terminal = $row->terminal;
        $year = $row->year;
        $month = $row->month;
        $cargovolume_ly[] = 
        '<div class="cargovolumes_ly">'. 
        '<span class="cv-year">Year: '.$year.' </span>'. 
        '<span class="cv-month"> Month: '.$month.' </span>'. 
        '<span class="cv-tonnage"> Tonnage: '.$tonnages.' </span></div>';
    };

    return $cargovolume_ly;

}

【问题讨论】:

    标签: wordpress laravel mariadb roots-sage


    【解决方案1】:

    foreach 一次只操作一个数组,有两种方法可以得到你想要的结果。

    出路1

    <div class="page_cargovolumes ly">
    @foreach (array_combine($cargovolumes_cy, $cargovolumes_ly) as $cargos_cy => $cargos_ly) 
       {!! $cargos_cy !!}
          <br>
       {!! $cargos_ly !!}
    @endforeach
    </div>
    

    出路2

    <div class="page_cargovolumes ly">
    @foreach($cargovolumes_cy as $nIndex => $cargos_cy)
       {!! $cargos_cy !!}
          <br>
       {!! $cargovolumes_ly[$nIndex] !!}
    @endforeach
    </div>
    

    【讨论】:

    • 谢谢!您可以在此处链接到使用双箭头的文档吗?
    • 抱歉没有收到。你想要什么文件?
    猜你喜欢
    • 1970-01-01
    • 2018-10-19
    • 1970-01-01
    • 1970-01-01
    • 2023-03-09
    • 1970-01-01
    • 2015-06-21
    • 1970-01-01
    • 2018-10-05
    相关资源
    最近更新 更多