我无法从以下PDO查询中输出结果。当我尝试处理结果数组时,我留下了一个" 注意:未定义的变量:资产在... "错误信息。
我尝试了很多功能和输出,但无法使其正常工作。我在这里错过了什么吗?
QUERY
function getAssets() {
global $dbc;
$query = "SELECT * FROM assets ORDER BY company ASC";
try {
$statement = $dbc->prepare($query);
$statement->execute();
$assets = $statement->fetchAll();
$statement->closeCursor();
return $assets;
} catch (PDOException $e) {
$error_message = $e->getMessage();
display_db_error($error_message);
}
}
观点
//call function
getAssets();
//display the results
foreach($assets as $asset) {
echo '<tr><td><b>Region:</b></td><td>'.$asset['company'].'</td></tr>';
}
我使用
测试了数组print_r($assets);
它会打印整个数组,但循环会很有用。我也尝试将数据作为对象获取无效。
谢谢! ... 并感谢不要对全局变量充满诗意:)
答案 0 :(得分:1)
$ assets是函数中的局部变量。要在函数外部使用它,你必须返回它(你做)和将该结果分配给循环范围内的变量:
//call function and use it's result.
$assets = getAssets();