PHP echo 最大长度问题

2015-09-05 22:52:00 +08:00
 Exin
<?php
for ($i=0; $i < 19999; $i++) {
echo $i;
}
?>

通过 PHPStorm 调试,输出总长度 80701 ,最后的内容是...18360183611 ,显然输出不完整。

Google 没找到原因,求解……
2196 次点击
所在节点    问与答
4 条回复
Exin
2015-09-05 23:21:26 +08:00
研究了一下,
改变$i < 19999 为 $i<9999 ,输出末尾变成...795079517952 ,长度 30703
不用 PHPStorm 的话输出是正常的。
真诡异。
zakokun
2015-09-06 00:34:02 +08:00
没太明白...为啥末尾是这么大的数字...$i<19999 的话最后输出的不应该是 19998 吗?
zakokun
2015-09-06 00:46:21 +08:00
@zakokun 看明白了. 这和 php 没啥关系吧,也许是因为超出了 phpstorm 单行字符串限制了呗
Exin
2015-09-06 10:40:12 +08:00
@zakokun 超出限制的话,为什么一次限制长度为 80701 ,另一次又变成了 30703 ,有时候还会变成 30700 、 16****(记不清),基本上 for 循环判断条件的值越大,这个长度也越大,就像是被截去了一定比例
非常诡异。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/218459

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX