• 本站已对IE放弃治疗,请在Chrome、Firefox等现代浏览器浏览本站。记住我们的域名:wanysys.cc 加入本站QQ群,大家一起HIGH: QQ群
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧
  • 传送门:#

mysql_fetch_row()和mysqli_fetch_array()区别

MySQL 张昊翔 2年前 (2016-08-03) 637次浏览 0个评论 扫描二维码

当我们在使用php5开发的时候,如果我们用到的MySQL语句还是以前的旧式语法的话,运行会发生错误,提示我们用mysqli或者PDO代替,例如mysql和mysqli中,fetch_row()和fetch_array()的区别。
一:Mysqli.dll是一个允许以对象的方式或者过程操作数据库的,它的使用方式也很容易。这里就几个常见的操作和mysql.dll做一个对比。
  1:mysql.dll(可以理解为函数式的方式):
  $conn = mysql_connect(‘localhost’, ‘user’, ‘password’); //连接mysql数据库
  mysql_select_db(‘data_base’,$conn); //选择数据库  
  $result = mysql_query(‘select * from data_base’);//这里有第二个可选参数,指定打开的连接
  $row = mysql_fetch_row( $result ) ) //为了简单,这里只取一行数据
  echo $row[0]; //输出第一个字段的值
  mysqli也有过程式的方式,只不过开始贯以mysqli的前缀,其他都差不多。如果mysqli以过程式的方式操作的话,有些函数必须指定资源,比如说 mysqli_query(资源标识,SQL语句),并且资源标识的参数是放在前面的,而mysql_query(SQL语句,’可选’)的资源标识是放在后面的,并且可以不指定,它默认是上一个打开的连接或资源。
  2mysqli.dll(对象方式):
  $conn = new mysqli(‘localhost’, ‘user’, ‘password’,’data_base’);
  //这里的连接是new出来的,最后一个参数是直接指定数据库,不用mysql_select_db()了
  //也可以构造时候不指定,然后 $conn -> select_db(‘data_base’)
  $result = $conn -> query( ‘select * from data_base’ );
  $row = $result -> fetch_row(); //取一行数据
  echo row[0]; //输出第一个字段的值
  二:mysql_fetch_row(),mysql_fetch_array()
  这两个函数,返回的都是一个数组,区别就是第一个函数返回的数组是只包含值,我们只能$row[0],
$row[1],这样以数组下标来读取数据,而mysql_fetch_array()返回的数组既包含第一种,也包含键值
对的形式,我们可以这样读取数据,(假如数据库的字段是 username,passwd):
  $row[‘username’], $row[‘passwd’]
  而且,如果用($row as $kay => $value)来操作的话,还以直接取得数据库的字段名称。
  更主要的是mysqli是php5提供的新函数库,(i)表示改进,其执行速度更快.
例如:


素梅好翔博客 , 版权所有丨如未注明 , 均为原创 , 转载请注明出处:http://www.wanysys.cc/coding/mysql/858.html
喜欢 (0)
[18586878276]
分享 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址