php mysql_fetch_array()函数

PHP / 656人浏览 / 0人评论

mysql_fetch_array() 是 mysql_fetch_row() 的扩展版本。除了将数据以数字索引方式储存在数组中之外,还可以将数据作为关联索引储存,用字段名作为键名。有一点很重要必须指出,用 mysql_fetch_array() 并不明显 比用 mysql_fetch_row() 慢,而且还提供了明显更多的值。

mysql_fetch_array()函数

支持版本:
(PHP 4, PHP 5)
mysql_fetch_array()定义以及用法:
mysql_fetch_array — 从结果集中取得一行作为关联数组
使用说明(Warning):
mysql_fetch_array ( resource $result [, int $result_type ] ) : array
mysql_fetch_array() 是 mysql_fetch_row() 的扩展版本。除了将数据以数字索引方式储存在数组中之外,还可以将数据作为关联索引储存,用字段名作为键名。有一点很重要必须指出,用 mysql_fetch_array() 并不明显 比用 mysql_fetch_row() 慢,而且还提供了明显更多的值。
函数传参:
mysql_fetch_object ( resource $result [, string $class_name [, array $params ]] ):object,返回一个对象,其属性与获取的行相对应,并将内部数据指针向前移动。
参数解释:

参数描述
resultresource 型的结果集。此结果集来自对 msql_query() 的调用。
result_type接受以下常量值: MSQL_ASSOC,MSQL_NUM 和 MSQL_BOTH,默认为 MSQL_BOTH。如果用了 MYSQL_BOTH,将得到一个同时包含关联和数字索引的数组。用 MYSQL_ASSOC 只得到关联索引(如同 mysql_fetch_assoc() 那样),用 MYSQL_NUM 只得到数字索引(如同 mysql_fetch_row() 那样)。

返回值:
返回根据从结果集取得的行生成的数组,如果没有更多行则返回 FALSE。
演示代码:

<?php
    $con = mysql_connect("localhost", "root", "root");
    
    mysql_query("SET NAMES 'UTF8'");     
    mysql_select_db("test");
    $result = mysql_query("select * from demo");
    
    if (!$result)
        die("mySQL error: ". mysql_error()); //如果不存在result的值就返回错误信息,因为提示就是没有值
    echo "<table border='1' align='center'>";
    while($row = mysql_fetch_array($result))
    {
        echo "<tr><td width='120'>".$row['id']."</td><td width='120'>".$row['title']."</td><td width='120'>".$row['name']."</td><td width='180'>".$row['message']."</td></tr>";
    }
    echo "</table>";
?>

数据库表:

/*
Navicat MySQL Data Transfer

Source Server         : localhost
Source Server Version : 50553
Source Host           : localhost:3306
Source Database       : test

Target Server Type    : MYSQL
Target Server Version : 50553
File Encoding         : 65001

Date: 2020-09-30 00:53:05
*/

SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- Table structure for demo
-- ----------------------------
DROP TABLE IF EXISTS `demo`;
CREATE TABLE `demo` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '自增ID',
  `title` varchar(30) NOT NULL COMMENT '标题',
  `name` varchar(20) NOT NULL COMMENT '名称',
  `message` mediumtext NOT NULL COMMENT '描述',
  `date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '日期',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COMMENT='注释';

-- ----------------------------
-- Records of demo
-- ----------------------------
INSERT INTO `demo` VALUES ('1', '设计师', '小明', '小明讲课', '2020-09-30 00:08:24');
INSERT INTO `demo` VALUES ('2', '客服', '上飞燕', '飞燕客服', '2020-09-30 00:20:44');
INSERT INTO `demo` VALUES ('3', '前台', '农章霞', '前台小思', '2020-09-30 00:21:42');
INSERT INTO `demo` VALUES ('4', '经理', '胡适', '设计经理', '2020-09-30 00:21:42');
INSERT INTO `demo` VALUES ('5', '研发部门经理', '曹丽', '项目经理', '2020-09-30 00:23:35');

转载注明:

0 条评论

还没有人发表评论

发表评论 取消回复

记住我的信息,方便下次评论
有人回复时邮件通知我