PHP mysqli fetch_array() 函数

定义和用法

fetch_array() / mysqli_fetch_array() 函数获取结果行作为关联数组、数字数组或两者。

注意:从该函数返回的字段名是区分大小写的。

实例

例子 1 - 面向对象风格

获取结果行作为数字数组和关联数组:

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

if ($mysqli -> connect_errno) {
  echo "Failed to connect to MySQL: " . $mysqli -> connect_error;
  exit();
}

$sql = "SELECT Lastname, Age FROM Persons ORDER BY Lastname";
$result = $mysqli -> query($sql);

// 数字数组
$row = $result -> fetch_array(MYSQLI_NUM);
printf ("%s (%s)\n", $row[0], $row[1]);

// 关联数组
$row = $result -> fetch_array(MYSQLI_ASSOC);
printf ("%s (%s)\n", $row["Lastname"], $row["Age"]);

// 释放结果集
$result -> free_result();

$mysqli -> close();
?>

例子 2 - 过程式风格

获取结果行作为数字数组和关联数组:

<?php
$con=mysqli_connect("localhost","my_user","my_password","my_db");

if (mysqli_connect_errno()) {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  exit();
}

$sql = "SELECT Lastname, Age FROM Persons ORDER BY Lastname";
$result = mysqli_query($con,$sql);

// 数字数组
$row = mysqli_fetch_array($result, MYSQLI_NUM);
printf ("%s (%s)\n", $row[0], $row[1]);

// 关联数组
$row = mysqli_fetch_array($result, MYSQLI_ASSOC);
printf ("%s (%s)\n", $row["Lastname"], $row["Age"]);

// 释放结果集
mysqli_free_result($result);

mysqli_close($con);
?>

语法

面向对象风格:

$mysqli_result -> fetch_array(resulttype)

过程式风格:

mysqli_fetch_array(result,resulttype)
参数 描述
result 必需。指定由 mysqli_query()、mysqli_store_result() 或 mysqli_use_result() 返回的结果集标识符。
resulttype

可选。指定应生成的数组类型。可以是以下值之一:

  • MYSQLI_ASSOC
  • MYSQLI_NUM
  • MYSQLI_BOTH(默认值)

技术细节

返回值:

返回与获取的行对应的字符串数组。

如果结果集中没有更多行,则返回 NULL。

PHP 版本: 5+