在PHP中循环一个字符串

时间:2018-05-22 18:24:59

标签: php for-loop

我需要一些方法在我用来创建字符串的函数中创建一个循环。 以下代码位于该函数的循环内。

{
 $messageBody .=
 $todayArray["responsibles"][273774][$reponsible].
 "\nAyer:\n"
  // I need to make a for loop for the next line
 .$yesterdayArray["contents"][273774][$reponsible]."\n".$link.$yesterdayArray["tasksid"][273774][$reponsible]." Procentaje completado:".$yesterdayArray["progress"][273774][$reponsible]."\nImpedimentos:\n".$yesterdayArray["impediments"][273774][$reponsible]."\n\n"
 ."Hoy:\n"
  // And for this line too
 .$todayArray["contents"][273774][$reponsible]."\n".$link.$todayArray["tasksid"][273774][$reponsible]." Procentaje completado:".$todayArray["progress"][273774][$reponsible]."\n\n";
}

正如你所看到的,我不能直接进行for循环,因为我正在构建一个字符串。

我该怎么办?

2 个答案:

答案 0 :(得分:0)

将单个字符串创建分成多个部分,同时连接到同一个变量。

$messageBody .= "{$todayArray["responsibles"][273774][$reponsible]}\nAyer:\n";

for ($x = 0; $x <= 10; $x++) { //loop 1
    $messageBody .= $yesterdayArray["contents"][273774][$reponsible]."\n".$link.$yesterdayArray["tasksid"][273774][$reponsible]." Procentaje completado:".$yesterdayArray["progress"][273774][$reponsible]."\nImpedimentos:\n".$yesterdayArray["impediments"][273774][$reponsible]."\n\n";
}

$messageBody .= "Hoy:\n";

for ($x = 0; $x <= 10; $x++) { //loop 2
    $messageBody .= $todayArray["contents"][273774][$reponsible]."\n".$link.$todayArray["tasksid"][273774][$reponsible]." Procentaje completado:".$todayArray["progress"][273774][$reponsible]."\n\n";
}

答案 1 :(得分:0)

只需终止添加需要循环的内容并在循环内部继续连接。显而易见的是,我所包含的循环仅用于说明目的,并没有做任何有意义的事情。只需插入您需要的地方即可。

{
 $messageBody .=
 $todayArray["responsibles"][273774][$reponsible].
 "\nAyer:\n";
  // I need to make a for loop for the next line
  for ($a = 0;$a < 2;$a++) {
    $messageBody .=  $yesterdayArray["contents"][273774][$reponsible]."\n".$link.$yesterdayArray["tasksid"][273774][$reponsible]." Procentaje completado:".$yesterdayArray["progress"][273774][$reponsible]."\nImpedimentos:\n".$yesterdayArray["impediments"][273774][$reponsible]."\n\n";

  }
 $messageBody .= "Hoy:\n";

  for ($a = 0;$a < 2;$a++) {

  // And for this line too
    $messageBody .=  $todayArray["contents"][273774][$reponsible]."\n".$link.$todayArray["tasksid"][273774][$reponsible]." Procentaje completado:".$todayArray["progress"][273774][$reponsible]."\n\n";
  }
}