用了几天mysqli扩展库觉得甚是好用,特别是预处理这个功能,真的很好用。如果只是不分层直接在页面php里写连接数据库代码我觉得几乎不会有问题,但是如果是自己抽出来的工具类就需要注意了,首先最重要的一点就是查询的时候释放资源的时机,一般来说数据没有显示在页面上就释放资源会引发数据库资源无效异常。解决的方法很简单那就是先把数据存储起来然后释放资源。
java中的做法是把查询的结果放在ArrayList里面然后关闭结果集,php原理也是一样的只是把集合换成了数组,如下所示
$result = $this->conn->query($pageSql);
$arr = array ();
$i=0;
while ($row = $result->fetch_assoc()) {
$arr[$i++] = $row;
}
$result->free();
显示数据的时候就直接遍历数组就可以了,代码如下
for ($i = 0; $i < count(arr); $i++) {
$row = $arr[$i];
echo "<tr align='center' height='25px'>";
echo "<td>$row[stuId]</td>";
echo "<td>$row[stuName]</td>";
echo "</tr>";
}
arr就表示我们存数据的数组


本文深入探讨了使用预处理功能提升MySQL查询效率的策略,并提供了PHP中处理查询结果集的有效方法,包括将数据存储在数组中并适时释放资源,以避免数据库资源无效异常。
707

被折叠的 条评论
为什么被折叠?



