gpt4 book ai didi

php - MySQLi 相当于 mysql_result()?

转载 作者:行者123 更新时间:2023-11-29 22:54:35 25 4
gpt4 key购买 nike

我正在将一些旧的 PHP 代码从 mysql 移植到 MySQLi,但遇到了一个小问题。

没有与旧的 mysql_result() 函数等效的函数吗?

我知道当您处理超过 1 行时,mysql_result() 比其他函数慢,但很多时候我只有 1 个结果和 1 个字段。使用它可以让我将 4 行压缩为 1 行。

旧代码:

if ($r && mysql_num_rows($r))  
$blarg = mysql_result($r, 0, 'blah');

所需代码:

if ($r && $r->num_rows)  
$blarg = $r->result(0, 'blah');

但是没有这样的事情。 :(

我有什么遗漏的吗?或者我是否必须忍气吞声并做好一切:

if ($r && $r->num_rows)  
{
$row = $r->fetch_assoc();
$blarg = $row['blah'];
}

最佳答案

以下函数完全复制mysql_result()函数,并在超出请求范围时返回false(空结果,没有该行)数字,没有该数字的列)。它确实有一个额外的好处,如果您不指定行,它会假定 0,0(要传递的值少一个)。该函数允许字段或字段名称的数字偏移。

function mysqli_result($res,$row=0,$col=0){ 
$numrows = mysqli_num_rows($res);
if ($numrows && $row <= ($numrows-1) && $row >=0){
mysqli_data_seek($res,$row);
$resrow = (is_numeric($col)) ? mysqli_fetch_row($res) : mysqli_fetch_assoc($res);
if (isset($resrow[$col])){
return $resrow[$col];
}
}
return false;
}

关于php - MySQLi 相当于 mysql_result()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28770797/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com