【问题标题】:PHP / Remove symbol from echo after final foreach iterationPHP / 在最终 foreach 迭代后从 echo 中删除符号
【发布时间】:2023-03-20 05:25:01
【问题描述】:

我正在尝试做一个计算器。

如何在 foreach 循环的最后一次迭代后使echo 命令中的plus 符号消失?
现在它显示为

55 + 22 + 4 + = 结果

$numbers = array (55, 22 , 4);
        foreach ($numbers as $number) {
            echo "$number + ";

【问题讨论】:

  • 可能你不想直接回显吧?删除输出的字符是不可能的,或者至少不值得开销

标签: php foreach echo calculator


【解决方案1】:

使用implode()函数代替foreach:

echo implode(" + ", $numbers);

【讨论】:

    【解决方案2】:

    如果你需要foreach

    $numbers = array (55, 22 , 4);
    $i=0;
    foreach ($numbers as $number) {
        $i++;
        echo "$number ";
        if(count($numbers) != $i){
            echo "+ ";
        }
    }
    

    【讨论】:

      【解决方案3】:

      看到这个post,它有一个很好的答案。对于您的用例,我建议与 Tomasz 相同。但如果你想知道如何找到最后一个循环,我将把它留在这里。

      $numbers = array(55, 22, 4);
      $i = 0;
      $len = count($numbers);
      foreach ($numbers as $number) {
          if ($i == 0) {
              // first
          } else if ($i == $len - 1) {
              // last
          }
      
          $i++;
      }
      

      【讨论】:

        【解决方案4】:

        还有另一种简单的方法,您不需要在这里使用循环。 尝试使用implode() 方法。

        $numbers = array (55, 22 , 4);
        echo implode(' + ', $numbers);
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2012-09-19
          • 1970-01-01
          • 2013-11-24
          • 2018-02-14
          • 2016-07-25
          • 1970-01-01
          • 1970-01-01
          • 2013-02-25
          相关资源
          最近更新 更多