You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP循环中使用串联赋值运算符后输出累加如何获取单次结果

问题原因

你使用的串联赋值运算符.=会在原有变量值的基础上追加新内容,而你将$output的初始化放在了循环外部,循环过程中没有清空该变量的原有值,因此每次循环的拼接结果都会和之前的内容累加。

解决方案

只需要在每次循环的起始位置将$output重置为空字符串即可,修改后的代码如下:

<!DOCTYPE html>
<html>
    <body>
        <?php 
            $number = "";
            $start = 0;
            $end = 5;

            $array = array();

            while($start <= $end) {
                // 每次循环开始先重置$output为空
                $output = "";
                $number = $start+=1;
                $output .= "1";
                $output .= "2";

                $array [] = $output;
            }
            echo json_encode(array (
                'output'=>$array,
            ));
        ?>
    </body>
</html>

修改后运行即可得到你预期的输出:

{"output":["12","12","12","12","12","12"]}

内容的提问来源于stack exchange,提问作者Grzes

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 05:36:03