如果在mysqlwhile循环中的语句没有';不起作用


If statement in mysql while loop doesn't work

我有一个问题,我想制定一个算法,从数据库中读取每个记录的日期,并检查它是否是数组中的日期。当它是正确的日期时,它将把它解析为另一个数组作为结果。

$jahr = date("Y");
$monate = array(
          array("Jan", $jahr."-01-01", $jahr."-01-31"),
          array("Feb", $jahr."-02-01", $jahr."-02-29"),
          array("Mär", $jahr."-03-01", $jahr."-03-31"),
          array("Apr", $jahr."-04-01", $jahr."-04-30"),
          array("Mai", $jahr."-05-01", $jahr."-05-31"),
          array("Jun", $jahr."-06-01", $jahr."-06-30"),
          array("Jul", $jahr."-07-01", $jahr."-07-31"),
          array("Aug", $jahr."-08-01", $jahr."-08-31"),
          array("Sep", $jahr."-09-01", $jahr."-09-30"),
          array("Okt", $jahr."-10-01", $jahr."-10-31"),
          array("Nov", $jahr."-11-01", $jahr."-11-30"),
          array("Dez", $jahr."-12-01", $jahr."-12-31")
          );
$betrag = array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 , 0);
$select = "SELECT * FROM database WHERE userID=1";
$query = mysql_query($select);
while($row = mysql_fetch_array($query)) {
    for($i=0; $i<12; $i++) {
        if($row['datum'] >= $monate[$i][1] && $row['datum'] <=0 $monate[$i][2]) {
            $betrag[$i] += $row['betrag'];
        }
    }
}

问题是,我在浏览器中收到了这个错误消息

分析错误:语法错误,第29行上test.php中出现意外的"$monate"(T_VARIABLE)

第29行是带有if语句的行

if($row['datum'] >= $monate[$i][1] && $row['datum'] <=0 $monate[$i][2]) {

在msql数据库中,行"datum"的格式为"date"

if($row['datum'] >= $monate[$i][1] && $row['datum'] <=0 $monate[$i][2]) {

具体看

$row['datum'] <=0 $monate[$i][2]

似乎是0 的拼写错误