Php 功能只工作了一半不知道为什么

Php 功能只工作了一半不知道为什么,php,odbc,Php,Odbc,我有一个函数,它是php中一个类的一部分,用于获取一些数据,它似乎适用于某些对象,但不适用于其他对象 我遇到了一个问题,它将获得前6条左右的记录,并将其余记录返回为null。这里是Var_dump$this->sdata string(6) "86.544" Notice: Undefined property: machine::$sdata in C:\Documents and Settings\jKirkpatrick\My Documents\xammp\htdocs\Datates

我有一个函数,它是php中一个类的一部分,用于获取一些数据,它似乎适用于某些对象,但不适用于其他对象

我遇到了一个问题,它将获得前6条左右的记录,并将其余记录返回为null。这里是Var_dump$this->sdata

string(6) "86.544" 
Notice: Undefined property: machine::$sdata in C:\Documents and Settings\jKirkpatrick\My Documents\xammp\htdocs\Datatest.php on line 96
NULL 
string(16) "181.090909090909" 
string(5) "0.072" 
string(3) "0.0" 
string(7)   "119.952"
string(3) "0.0" 
Notice: Undefined property: machine::$sdata in C:\Documents and  Settings\jKirkpatrick\My Documents\xammp\htdocs\Datatest.php on line 96
NULL 
Notice: Undefined property: machine::$sdata in C:\Documents and Settings\jKirkpatrick\My Documents\xammp\htdocs\Datatest.php on line 96
NULL 
Notice: Undefined property: machine::$sdata in C:\Documents and Settings\jKirkpatrick\My Documents\xammp\htdocs\Datatest.php on line 96
NULL 
Notice: Undefined property: machine::$sdata in C:\Documents and Settings\jKirkpatrick\My Documents\xammp\htdocs\Datatest.php on line 96
NULL 
Notice: Undefined property: machine::$sdata in C:\Documents and Settings\jKirkpatrick\My Documents\xammp\htdocs\Datatest.php on line 96
NULL 
Notice: Undefined property: machine::$sdata in C:\Documents and   Settings\jKirkpatrick\My Documents\xammp\htdocs\Datatest.php on line 96
NULL


public function SageData() {
    $conn = odbc_connect('DATA HUB', '', '');
    if (!$conn) {
        exit("Connection Failed: " . $conn);
    }
    $sql = "SELECT `SHOP FLOOR PRODUCTION PLAN`.MACHINE, `SHOP FLOOR PRODUCTION     

PLAN`.CODE, `SHOP FLOOR PRODUCTION PLAN`.DESCRIPTION, `SHOP FLOOR PRODUCTION     
PLAN`.WONo, `SHOP FLOOR PRODUCTION PLAN`.Quantity, `SHOP FLOOR PRODUCTION 
PLAN`.cycletime, `SHOP FLOOR PRODUCTION PLAN`.IMPS, `SHOP FLOOR PRODUCTION 
PLAN`.Estimate
FROM `P:\ProductionControl\Production Planning\DATA HUB.mdb`.`SHOP FLOOR PRODUCTION   
PLAN` `SHOP FLOOR PRODUCTION PLAN`

WHERE [SHOP FLOOR PRODUCTION PLAN].[MACHINE]='$this->name' ";
$rs = odbc_exec($conn, $sql);
    if (!$rs) {
        exit("Error in SQL");
    }
    while (odbc_fetch_row($rs)) {
        $this->sdata = $this->SDtReading = odbc_result($rs, "cycletime");
    }
    return@ $this->sdata;
}
这里的数据是预期的结果

86.544
181.0909091
0.072
0
119.952
0 
72
32.76
799.992 
36
39.6
29.988
该函数是类的一部分,并作为MachinecycleZW01001、ZW01001、0运行; 在查询中,$this->名称将是ZW01001

如果您能帮助调试,我们将不胜感激

    while (odbc_fetch_row($rs)) {
        $this->sdata = $this->SDtReading = odbc_result($rs, "cycletime");
           var_dump($this->sdata);
        }
    return $this->sdata;
}
这与while循环中的Var dump产生的结果相同,与之前在没有NULL的情况下发布的结果相同

    while (odbc_fetch_row($rs)) {
        $this->sdata = $this->SDtReading = odbc_result($rs, "cycletime");
        }
    var_dump($this->sdata);
    return $this->sdata;
}

这与Dump out端同时产生的结果与之前发布的结果完全相同。

它不能工作,一半工作,一半不工作。这个错误意味着$this->sdata对于某些行是未定义的。但是它提取前6行的数据,并且数据在那里,我不明白为什么它会给出一个错误。您将var_转储行放在哪里了。。?我想知道为什么在第一行和第二行vardump日志之间有一个警告和一个NULL,而在其他行之间没有。varu dump就在return@$this->sdata的上方;拿着电话…它不在while循环中?那么如何获得多个输出?