PHP中的神秘代码

时间:2012-11-22 09:06:43

标签: php sql loops while-loop

这个代码块是在别人写的一个脚本中找到的,我被要求编辑。它似乎没有做任何事情......我想知道为什么它在那里,如果我删除它,如果世界某处的东西会出现严重错误..

我错过了什么吗?

//begin mystery code - i have no idea what this chunk of code is doing..
$result = mysql_query("SHOW COLUMNS FROM ".$table."");
$i = 0;
if (mysql_num_rows($result) > 0) {
while ($row = mysql_fetch_assoc($result)) {
$i++;
}
}
//end mystery code

$result未在其他任何地方引用..

3 个答案:

答案 0 :(得分:7)

它计算数据库表$table中的列数,并将值放在$i

据推测,$i后来用于什么?

答案 1 :(得分:2)

它做了两件事:

  1. 每行增加$i
  2. 将每一行存储到$row,最后存入false
  3. 所以最后确定:

    • $i到行数。
    • $rowfalse

    但不要怀疑垃圾代码。改进它:

    $i   = mysql_num_rows($result);
    $row = false;
    

    还封装了mysql_*个调用,以便您以后轻松替换它们。如果查询失败,您还应该处理错误情况。

答案 2 :(得分:0)

它似乎唯一要做的就是计算$ i中的列数。如果脚本中没有使用$ i,则可以删除此代码。

如果没有代码可以删除,

还会在脚本中查找$ row和$ result变量。

相关问题