【问题标题】:How to do mysql_fetch_assoc in mysqli?如何在 mysqli 中做 mysql_fetch_assoc?
【发布时间】:2011-04-16 20:57:11
【问题描述】:

如何在 mysqli prepare 语句中执行以下操作?

$result = mysql_query($sql);
$data = mysql_fetch_assoc($result);
return $data:

【问题讨论】:

    标签: php mysqli


    【解决方案1】:

    你需要使用MySQLi版本的函数:

    $result = mysqli_query($sql);
    $data = mysqli_fetch_assoc($result);
    return $data;
    

    应该可以,你也可以看看:

    【讨论】:

    • 刚刚试了一下,效果很好。 @the downvoter:如果您的批评是这个解决方案不是“干净的”(另一个答案中的面向对象版本毕竟是“首选”),那么请在评论中说出来。否则人们可能会觉得这里的答案实际上是错误的,但事实并非如此。
    • 谢谢你,@mathheadinclouds。我只更正了OP的代码,这样他就不用从学mysqli到学OOP了。
    【解决方案2】:

    在某处创建与 mysql 的连接后,这非常简单:

    <?php
    // create the connection to mysql.
    $mysqli = new mysqli('localhost', 'my_user', 'my_password', 'my_db');
    ?>
    

    当你需要做一个查询或做其他事情时引用 mysqli 对象。

    <?php
    // get the result object.
    $result = $mysqli->query($sql);
    // fetch the result row.
    $data = $result->fetch_assoc();
    
    return $data;
    ?>
    

    然后在某个时候(如果你有一个类,你可以编写一个析构函数)如果你不再需要它,你应该关闭与 mysql 的连接。

    <?php
    $mysqli->kill($mysqli->thread_id);
    $mysqli->close();
    ?>
    

    你可以用你拥有的结果对象做更多的事情。 所以在这里阅读更多关于MySQLi_Result的信息:

    【讨论】:

      猜你喜欢
      • 2015-03-08
      • 2017-02-09
      • 2014-07-11
      • 2023-03-24
      • 2011-02-22
      • 1970-01-01
      • 1970-01-01
      • 2010-12-04
      • 1970-01-01
      相关资源
      最近更新 更多