关于mysqli_query()函数和mysqli_fetch_array($ result)如何工作?

时间:2017-01-31 12:15:07

标签: php mysqli

我是PHP新手,

enter image description here

我遇到了mysqli的一些问题, 现在我明白mysqli_fetch_array($ result)用于从表中获取数据,而mysqli_query()用于查询表,但我想进一步了解它,这就是mysqli_fetch_array如何获取一行,以及在哪里获取一个行,这里的行是什么意思,它来自哪里? 和mysqli_query()将返回一个mysqli_result对象,它是什么意思?它是一个数组?设置?或者是其他东西? 我非常感谢...谢谢!

1 个答案:

答案 0 :(得分:0)

如前所述,您应该阅读这些网站:http://php.net/manual/en/mysqli.query.phphttp://php.net/manual/en/mysqli-result.fetch-array.phphttp://php.net/manual/en/mysqli-result.fetch-assoc.php

通常,您开始执行可能返回结果对象的mysqli_query。

然后你将结果与mysqli_fetch_array或mysqli_fetch_assoc(我个人更喜欢assoc)一起使用来获取行。每次运行fetch函数时都会得到一行。

我从php.net链接复制示例1:

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if ($mysqli->connect_errno) {
    printf("Connect failed: %s\n", $mysqli->connect_error);
    exit();
}

$query = "SELECT Name, CountryCode FROM City ORDER by ID LIMIT 3";
$result = $mysqli->query($query);

/* numeric array */
$row = $result->fetch_array(MYSQLI_NUM);
printf ("%s (%s)\n", $row[0], $row[1]);

/* associative array */
$row = $result->fetch_array(MYSQLI_ASSOC);
printf ("%s (%s)\n", $row["Name"], $row["CountryCode"]);

/* associative and numeric array */
$row = $result->fetch_array(MYSQLI_BOTH);
printf ("%s (%s)\n", $row[0], $row["CountryCode"]);

/* free result set */
$result->free();

/* close connection */
$mysqli->close();
?>