Also ... Ich bisheriger Code war:
$frage = 'ZA01';
$items = array();
for ($i=1; $i<=05; $i++) {
  $itemID = id($frage, $i);
  $antwort = value($itemID);
  if (trim($antwort) != '') {
    replace('%text'.$i.'%', $antwort);
    $items[] = $i;
  }
}
if (count($items) > 0) {
  question('GK01', $items);
}
Ziel ist es aber nicht, die Items in GK01 zu steuern, sondern die Spalten einer kombinierten Frage, bestehend aus GK01 bis GK05.
Dafür müssen wir den Code ein wenig anpassen - und zwar müssen wir die $items noch in Frage-Kennungen umkodieren. Dafür verwenden wir ein Array mit den Kennungen (hier ausfürhlich, das könnte man auch kompakter bauen):
$spalten = array(
  1 => 'GK01',
  2 => 'GK02',
  3 => 'GK03',
  4 => 'GK04',
  5 => 'GK05'
);
Dann wird umkodiert:
$fragen = [];
foreach ($items as $item) {
  $fragen[] = $spalten[$item];
}
Und zuletzt wird die kombinierte Frage angezeigt:
show($fragen);
Nochmal im Gesamten:
$frage = 'ZA01';
$items = array();
for ($i=1; $i<=05; $i++) {
  $itemID = id($frage, $i);
  $antwort = value($itemID);
  if (trim($antwort) != '') {
    replace('%text'.$i.'%', $antwort);
    $items[] = $i;
  }
}
$spalten = array(
  1 => 'GK01',
  2 => 'GK02',
  3 => 'GK03',
  4 => 'GK04',
  5 => 'GK05'
);
$fragen = [];
foreach ($items as $item) {
  $fragen[] = $spalten[$item];
}
question($fragen);
Ich bin ehrlich gesagt nicht sicher, oder question($fragen) ebenfalls funktioniert. Dies können Sie gerne einmal ausprobieren, bevor Sie die Funktion show() verwenden, die sich noch im Teststadium befindet.