0

我在 PHP 中有一个带有各种计算的 while 循环以及一些 IF/ELSE 语句。它被硬编码为循环 100 次,或者直到满足某个条件时才被破坏。每次循环迭代时,它都会回显一行文本。

在少数迭代中,我没有将回显输出到我的网页。它是完全随机的,有时它会错过 1、13、50 ......有时它直到 50 左右才会错过任何一个。这真的让我很困惑,因为所有代码都成功执行了,只是偶尔没有输出。

在任何人提到之前,不会产生任何错误。我不会发布循环,因为它太大了,并且如前所述,所有代码都没有错误并成功执行。

4

2 回答 2

0

我发现了问题。在我的 while 循环中有一个很大的 IF/ELSE 语句,并且有一个我忘记考虑的情况,这是非常罕见/不太可能发生的情况。现在一切正常,只是一个小学生的错误。

于 2013-04-29T08:20:12.327 回答
0

您是否尝试过在测试环境中执行 var_dump 并将其与实时环境中的相同输出进行比较。如果不能,可能会重命名页面/代码的副本?如果 var_dump 不是一个选项,请检查在您的实时代码中放置 IP 地址检查,并在不返回 NULL 的内容中打印出该值,如果它是无效或 NULL 值,则 echo 会返回。一个简单的测试是:

if($_SERVER['REMOTE_ADDR'] == '192.168.0.1') // whatever your ip is
{
    var_dump($echo_string);
}

这只是一个示例,但我发现的 var_dump 会肯定地告诉您该值是什么,即使为 NULL,您还必须考虑到 IF 语句可能会避免您的回声或字符串追加到基于该值的循环中在一个条件下。

于 2013-04-28T20:09:05.643 回答