php - 错误:试图访问 bool 类型值的数组偏移量
问题描述
我在 php 类中有一个功能:
public function details($id) {
try {
$sql = "SELECT * FROM khoa WHERE ma_khoa = :ma";
$stmt = $this->db->prepare($sql);
$stmt->bindparam(":ma", $ma);
$stmt->execute();
$result = $stmt->fetch();
return $result;
} catch (Exception $e) {
echo $e->getMessage();
return false;
}
}
然后,我以形式使用此功能:
<form method="POST" action="update_post.php">
<div class="row100">
<div class="col">
<div class="inputBox">
<input type="text">
<input type="text" value="<?php echo $kh['ma_khoa']; ?>" name="makhoa">
<span class="text">Mã khoa</span>
<span class="line"></span>
</div>
</div>
</div>
</form>
和$kh = $khoa->details($id);
$khoa 是连接数据库的变量。
但我收到此通知:
你能为我解释一下这个错误以及解决这个问题的方法吗?
解决方案
正如你的日志所说,你的电话$kh = $khoa->details($id);
有$kh = false
所以请重新检查和调试你的详细信息功能。
当然,false 是一个 bool 值,不能作为数组访问。
推荐阅读
- bots - 机器人不跟随 robots.txt 文件
- python-3.x - 获取ISO日期输入python的格式
- javascript - VueJS 查看具有预设值的输入字段
- gmail - DKIM 问题 - dkim=neutral (no key) 和其他错误
- r - 如何操作数据,如果变量给出输出,则后续变量必须给出相同的输出?
- javascript - 使用按钮单击调用服务功能不会更新视图
- single-sign-on - auth.getAccessTokenAsync 的 Outlook 插件错误代码 13005
- sql-server - 使用 Microsoft Query 在 Excel 中创建与 SQL Server 的公共连接
- linkedin - LinkedIn API:获取公司数据
- multithreading - 重新运行、重新启动和中止线程