将旧项目从使用 mysql 扩展改为使用 mysqli 扩展时,我发现最令人讨厌的改变是 mysqli 中缺少与 mysql_result 函数相对应的函数。虽然 mysql_result 通常是一个很糟糕的函数,但它对于从结果集中获取单个结果字段 *值* 很有用(例如,如果要查找用户的 ID)。
这里模拟了 mysql_result 的行为,不过你可能想要给它取一个除了 mysqli_result 之外的名称,以避免认为它是一个内置的函数。
<?php
function mysqli_result($res, $row, $field=0) {
$res->data_seek($row);
$datarow = $res->fetch_array();
return $datarow[$field];
}
?>
通过 OO 接口实现它留给读者作为练习。