从我的数据库中我只得到一个结果。然而,由于此代码,我得到一个返回的数组
while($obj = $stmt->fetch(PDO::FETCH_OBJ)){
$result[] = $obj;
}
返回的数组在索引0处只有一个元素(对象)。从这个对象我想访问一个属性。
我的代码如下:
return $result[0]->_id;
我收到通知
尝试在...中获取非对象的属性
以下是我的转储:
var_dump
array(1) { [0]=> object(stdClass)#4 (13) { ["_id"]=> string(8) "43001613" ["another-property"]=> string(5) "20608" } }
print_r
Array
(
[0] => stdClass Object
(
[_id] => 43001613
[another-property] => 20608
)
)
肯定只是一个小错误,但我现在无法理解。
修改 这是完整的功能:
public function getOrtIDForPLZ($plz){
$sql = "SELECT * FROM verortung WHERE plz = :plz LIMIT 1;";
$result = $this->ExecuteQuery($sql, array("plz"=>$plz));
var_dump($result);
echo '<pre>';
print_r($result);
echo '</pre>';
return $result[0]->_id;
}
输出:
array(1) { [0]=> object(stdClass)#32 (13) { ["_id"]=> string(8) "43006637" ["gemeindekennziffer"]=> string(5) "32330" ["gemeindename"]=> string(13) "Theresienfeld" ["ortsname"]=> string(13) "Theresienfeld" ["plz"]=> string(4) "2604" ["bezirk"]=> string(21) "Wiener Neustadt -Land" ["bundesland"]=> string(17) "Niederösterreich" ["lat"]=> string(11) "47.85000000" ["lon"]=> string(11) "16.23333330" ["einwohner_2001"]=> string(4) "2490" ["kfz-kennzeichen"]=> string(2) "WB" ["fläche_km2"]=> string(5) "11.44" ["seehöhe"]=> string(3) "282" } }
Array
(
[0] => stdClass Object
(
[_id] => 43006637
[gemeindekennziffer] => 32330
[gemeindename] => Theresienfeld
[ortsname] => Theresienfeld
[plz] => 2604
[bezirk] => Wiener Neustadt -Land
[bundesland] => Niederösterreich
[lat] => 47.85000000
[lon] => 16.23333330
[einwohner_2001] => 2490
[kfz-kennzeichen] => WB
[fläche_km2] => 11.44
[seehöhe] => 282
)
)
NULL
注意:尝试在第4507行的/home/www/home/includes/class.DatabaseQuery.php中获取非对象的属性
答案 0 :(得分:2)
您可能多次调用此方法。在第一次通话中,一切都很好,但在下一次......
看到NULL
?当然,你无法获得NULL
的财产。
如果情况并非如此,那么第4507行指向其他地方。