mysqli_query + foreach在本地和服务器中的工作方式不同

时间:2014-06-28 20:19:31

标签: php sql mysqli localhost

我想知道这个程序是否正确,但它大部分时间都适用于我(直到现在)。

当我想获取SQL表信息时,我曾使用以下代码:

if (!$db = mysqli_connect(HOST,USER,PASS,NAME)) return false;

$results = mysqli_query($db,"SELECT * FROM `table`");

foreach ($results as $result) {
    var_dump($result);
}

问题是我在localhost中测试它并且它完美地运行,我有我期望的结果(以var_dump预期的格式)。但是,对同一个数据库(但在服务器中)的相同代码和相同查询返回一定数量的NULL(显式为“NULL NULL NULL NULL NULL”)。

localhost:mysqli - 客户端API库版本:5.0.10 - 20111026 - $ Id:e707c415db32080b3752b232487a435ee0372157 $(来自phpinfo)

server:mysqli - 客户端API库版本:5.5.35

问题:有没有人知道这是否与我的问题有关?

我会感谢任何帮助。此致!

1 个答案:

答案 0 :(得分:0)

在两者上试试这个:

while( $row = $results->fetch_array(MYSQLI_ASSOC) ){
    print_r($row);
}

如果仍有一些差异,请告诉我们。