如何将生成的MySQL行存储到数组中?

时间:2014-01-21 02:23:45

标签: php mysql sql arrays

我有两个功能。它们都非常相似,因为在上一次检查中未显示的那个使用>而不是<

<?php
function getOldEvents(){
    $con = db::conn();
    $result = mysqli_query($con, "SELECT * FROM events WHERE CAST(deleteEvent AS UNSIGNED INTEGER) > ".time()." AND CAST(end AS UNSIGNED INTEGER) < ".time());
    $i = 0;
    $theEvents = array();
    if (mysqli_num_rows($result > 0)) {
        while($row = mysqli_fetch_assoc($result)) {
            $theEvents[$i] = $row;
            $i++;
        }
    }
    mysqli_close();
    return $theEvents;
}
?>

无论我看多少次,我认为它应该可以工作,但是当我用print_r(getOldEvents())检查输出时,我得到一个空数组。我已经知道SQL是有效的,因为我在其中测试了phpMyAdmin以确定,结果是预期的。我无法从$result变量中正确检索数据。我还要补充说,页面或日志中不会出现任何错误。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

你有一个错字:

if (mysqli_num_rows($result > 0)) {

应该是:

if (mysqli_num_rows($result) > 0) {