PHP foreach:将每个循环结果放在变量中

时间:2017-11-30 07:29:00

标签: php variables object foreach store

我正在尝试将foreach中的值存储到一个变量中。但我似乎无法让它发挥作用:

    foreach ($chunks as $key)   {
      // Get the Excel template path
      $path = storage_path('/app/excel/331-3-17 72AN - 21.3 - Ст. 20.xlsx');

      // Load the excel template file
      Excel::load($path, function($reader) use (&$key) {

      // Load the Excel sheet
      $objExcel = $reader->getExcel();
      $sheet = $objExcel->getSheet(0);

        foreach ($key as $row) {

           $welds = $row->weld;

           $string .= $welds.',';

      }

    $sheet->getCell('B25')->setValue($string);

    })
    // Set filename & store it
    ->setFilename("331-3-17 72AN - 21.3 - Ст. 20 " . date("d.m.y").'-'.mt_rand())
    ->store('xlsx', storage_path('/app/exports/21.3 - 2.5 - Ст20 '.date('m-d-Y')));
  }

我得到的结果是:

КСС1814.

预期结果为一个字符串:

КСС1810, КСС1811, КСС1812, КСС1813, КСС1814

enter image description here enter image description here

1 个答案:

答案 0 :(得分:2)

不确定这是否正确,但这是猜测 使用数组列并使用逗号进行内爆。

$welds = array_column($key, "weld");
$string = implode(",", $welds);

Array_column将获取数组键中键“焊接”的所有值 Implode将使用值之间的逗号构建数组的字符串。