PHP mysqli_fetch_array MySQLi 函数
-
定义和用法
mysqli_fetch_array - 获取结果行作为关联数组,数字数组或两者兼而有之 -
版本支持
PHP4 PHP5 PHP7 不支持 支持 支持 -
语法
mysqli_fetch_array ( mysqli_result $result [, int $resulttype = MYSQLI_NUM ] )
返回与获取的行相对应的数组;如果result参数表示的结果集没有更多行,则返回NULL。 mysqli_fetch_array() 是mysqli_fetch_row()函数的扩展版本。 除了将数据存储在结果数组的数字索引中之外,mysqli_fetch_array()函数还可以使用结果集的字段名称作为键将数据存储在关联索引中。注意: 此函数返回的字段名大小写敏感。注意: 此函数将 NULL 字段设置为 PHP NULL 值。如果结果的两列或更多列具有相同的字段名称,则最后一列将具有优先权并覆盖先前的数据。 为了访问具有相同名称的多个列,必须使用该行的数字索引版本。 -
参数
参数 必需的 描述 result 是 由 mysqli_query(),mysqli_store_result() 或 mysqli_use_result() 返回的结果集标识。 resulttype 否 此可选参数是一个常量,指示应从当前行数据中生成哪种类型的数组。 此参数的可能值为常数MYSQLI_ASSOC,MYSQLI_NUM或MYSQLI_BOTH。通过使用MYSQLI_ASSOC常量,此函数的行为将与mysqli_fetch_assoc()相同,而MYSQLI_NUM的行为将与mysqli_fetch_row()函数相同。 最后一个选项MYSQLI_BOTH将创建具有两个属性的单个数组。 -
返回值
返回与获取的行对应的字符串数组;如果结果集中没有更多的行,则返回NULL。 -
示例
<?php $link = mysqli_connect("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($link, $query); /* numeric array */ $row = mysqli_fetch_array($result, MYSQLI_NUM); printf ("%s (%s)\n", $row[0], $row[1]); /* associative array */ $row = mysqli_fetch_array($result, MYSQLI_ASSOC); printf ("%s (%s)\n", $row["Name"], $row["CountryCode"]); /* associative and numeric array */ $row = mysqli_fetch_array($result, MYSQLI_BOTH); printf ("%s (%s)\n", $row[0], $row["CountryCode"]); /* free result set */ mysqli_free_result($result); /* close connection */ mysqli_close($link);
-
相关函数
mysqli_fetch_assoc() - 提取结果行作为关联数组mysqli_fetch_row() - 获取结果行作为枚举数组mysqli_fetch_object() - 返回结果集的当前行作为对象mysqli_query() - 对数据库执行一次查询mysqli_data_seek() - 将结果指针调整为结果中的任意行