📜  mysql_fetch_array php (1)

📅  最后修改于: 2023-12-03 15:03:07.618000             🧑  作者: Mango

mysql_fetch_array php

介绍

在 PHP 中, mysql_fetch_array() 函数用于从 MySQL 查询中获取一行作为关联数组或数字数组。

此函数返回一个数组,索引方式可以是数字也可以是字符串。它可以使用数字索引表示列名或列的位置,也可以使用字符串索引表示列名。

如果返回的结果集中有重复列名,那么默认情况下,mysql_fetch_array() 函数将重复列名覆盖掉。但是,你可以在函数的第二个参数中指定获取的数组类型来覆盖此默认行为。

用法
基本语法
mixed mysql_fetch_array ( resource $result [, int $result_type = MYSQL_BOTH ] )
参数
  • $result:要获取数据行的 MySQL 结果对象。
  • $result_type: 可选参数。指定获取的数据行类型。可以是常量 MYSQL_ASSOC, MYSQL_NUM, 或 MYSQL_BOTH
返回值

若存在数据,则返回一个关联数组或数字数组。 否则返回 false。该函数返回不区分大小写的列名,除非在将结果集放入数组时指定了 MYSQL_CASE_LOWER 或 MYSQL_CASE_UPPER。

示例代码

以下是一个使用 mysql_fetch_array() 函数获取查询结果的 PHP 代码:

$results = mysql_query("SELECT id, name FROM mytable");

// 获取关联数组
while ($row = mysql_fetch_array($results, MYSQL_ASSOC)) {
    echo "id: {$row['id']} / name: {$row['name']}\n";
}

// 获取数字数组
while ($row = mysql_fetch_array($results, MYSQL_NUM)) {
    echo "id: {$row[0]} / name: {$row[1]}\n";
}

// 获取同时包含关联数组和数字数组的混合数组
while ($row = mysql_fetch_array($results, MYSQL_BOTH)) {
    echo "id: {$row[0]} / name: {$row['name']}\n";
}
注意事项
  • 该函数已在 PHP 7.0.0 中移除,请使用 mysqli_fetch_array() 或 PDOStatement::fetch() 替代。
  • 请注意,本函数名以被延迟的方式废弃,因此你可能在这个方法中遇到奇怪的表现来表现,应该使用 mysqli_fetch_array ,而不是 mysql_fetch_array。