我为什么会出乎意料的'}'?

时间:2014-03-09 11:48:12

标签: php

作为一个相当新的PHP用户我认为附加的代码应该工作。即;所有括号均衡。但在firebug-xdebug中,它表示有一个Parse错误:语法错误,意外'}'。它引用的行我在我的代码中突出显示。造成这种情况的原因是什么。感谢

<?php

foreach ($array as $box) {
    $box = mysql_real_escape_string($box);
    $sql = "SELECT item FROM temp WHERE item = '$box'";
    $result = mysql_query($sql) or die ('{"opp":"error","box":"' . mysql_error() . '"}');


    if (mysql_num_rows($result) > 0) {

        $outString .= $box . ','

  }<---THIS LINE ERROR
}

?>

3 个答案:

答案 0 :(得分:4)

你应该在行$outString .= $box . ','的末尾加上一个分号:

if (mysql_num_rows($result) > 0) {
    // ---------------------v
    $outString .= $box . ',';
}

答案 1 :(得分:3)

<?php

foreach ($array as $box) {
  $box = mysql_real_escape_string($box);
  $sql = "SELECT item FROM temp WHERE item = '$box'";
  $result = mysql_query($sql) or die ('{"opp":"error","box":"' . mysql_error() . '"}');


  if (mysql_num_rows($result) > 0) {

    $outString .= $box . ',' ;  <<-- Missed semicolon

   }
 }

?>

答案 2 :(得分:1)

因为错过了分号 固定:         $ outString。= $ box。 '';