弃用

这个问题在这里已经有了答案:

  • 为什么我不应该在PHP中使用mysql_ *函数? 14个答案

  • 根据PHP手册,您应该使用以下任一项:

  • mysqli_stmt_num_rows()
  • PDOStatement对象:: rowCount时()
  • 但要清楚的是,这些都不是mysql_num_rows()的简单替代品。 您的代码最终必须完全重写,以使用MySQLi或PDO API代替mysql_*()


    就我个人而言,我现在使用MySQL改进的扩展。

    如果你选择以程序的方式使用它,它可以以非常类似的方式用于你当前如何使用旧的MySQL扩展。

    示例(MySQL):

    $result = mysql_query($query);
    
    if (!$result) die ("Database access failed: " . mysql_error());
    
    $rows = mysql_num_rows($result);
    

    示例(MySQL改进):

    $result = mysqli_query($query);
    
    if (!$result) die ("Database access failed: " . mysqli_error());
    
    $rows = mysqli_num_rows($result);
    

    但是,我使用面向对象方式改进了MySQL。

    更多信息可以在这里找到:http://www.php.net/manual/en/book.mysqli.php


    如果您了解数据库抽象库的想法,请使用safemysql

    $data = $db->getAll($query,$param1,$param2);
    $rows = count($data);
    

    如果使用原始API函数更熟悉您,请使用PDO

    $stm = $pdo->prepare($query);
    $stm->execute(array($param1,$param2));
    $data = $stm->fetchAll();
    $rows = count($data);
    

    注意2个重要的事情:

  • 请求的数据已经存储在$ data变量中。
  • 每个动态查询部分(即插入的变量)都必须通过占位符插入
  • 链接地址: http://www.djcxy.com/p/26585.html

    上一篇: deprecated

    下一篇: Wierd and Annoying error: Call to undefined function mysql