php - 多维数组错误 - 未识别的索引
问题描述
据我所知,我已经定义了变量,但是我收到以下错误:
注意:未定义的索引:headerid in ..
function group_items($db_results) {
$data = array();
while($row = mysqli_fetch_assoc($db_results)) {
$title_id = htmlentities($row['TitleID']);
$title = htmlentities($row['MainTitle']);
// group Main Title by title id
$data[$title_id]['title'] = htmlentities($row['MainTitle']);
// group data by title id
$data[$title_id]['data'][] = array(
'headerid' => $row['headerid'],
'title' => htmlentities($row['title']),
'content' => htmlentities($row['content'])
);
}
// testing
if (isset($data['headerid'])) {
echo "Yes";
} else {
echo "NO";
}
return $data;
}
当我同时使用isset()
和测试array_key_exists
真/假时,结果为假。
使用 print_r 时,我得到以下信息: Array ( [1] => Array ( [title] => 关于社区监管一般原则的有希望的做法 [data] => Array ( [0] => Array ( [a] => 1 [title] => 发起和发展执法机构之间的协调和协作行动 [content] => 良好的合作和协调关系 .... 更多内容在这里
解决方案
$data['headerid']
未在您的代码中定义。
尝试Print_r($data);
检查数组元素。
在测试时,您需要编辑代码以
isset($data[$title_id]['data'][0]['headerid']))
推荐阅读
- deep-learning - 我们可以使用两个相同的深度神经网络,中间的函数成本是多少
- git - 根据合并请求重命名分支
- swift - config 2 alerts messages in button swiftUI
- python - Python - 获取顶级域名
- shopware - Shopware 6 sw-entity-单选空选项
- javascript - 为什么我的 TS 代码没有被解释为 CommonJS?
- vue.js - 将计算属性嵌套在一个对象中以进行代码维护 (Vue)
- powershell - 如何测试 powershell 函数是否具有 cmdletbinding 属性
- fonts - 已解决在 AOSP 构建中添加新字体
- javascript - 在 Rails 6 中可以使用两种模式来验证设计用户吗?