永发信息网

怎么把mysql_fetch_array得到的结果,变成一维数组

答案:4  悬赏:20  手机版
解决时间 2021-01-12 19:46
  • 提问者网友:火车头
  • 2021-01-12 01:00
怎么把mysql_fetch_array得到的结果,变成一维数组
最佳答案
  • 五星知识达人网友:污到你湿
  • 2021-01-12 02:07
mysql_fetch_array() 函数返回一行记录的一维数组,并把指针移动到下一行,所以它的运行结果本身就是一维数组:
字段和数字索引同时存在:
Array    
(    
   [0] => 1    
   [id] => 1    
   [1] => 文章标题    
   [title] => 文章标题    
}mysql_fetch_array()相当于是mysql_fetch_assoc()和mysql_fetch_row()两者的合并:
mysql_fetch_assoc()的结果是以字段名称为下标:
Array    
(     
   [id] => 1      
   [title] => 文章标题    
}mysql_fetch_row()的结果是以数字为下标:
Array    
(     
   [0] => 1      
   [1] => 文章标题    
}综合上述,mysql_fetch_array是一维数组,如果想单纯的使用下标关联数组就使用mysql_fetch_assoc,这样也可以减少内存开销。

全部回答
  • 1楼网友:青灯有味
  • 2021-01-12 03:47
循环只在内部 ,在外部又循环不了追问那怎么把循环的值赋给一个变量,让这个变量在外面可以查看
  • 2楼网友:duile
  • 2021-01-12 03:38
while($row = mysql_fetch_assoc($sql)){
foreach($row as $k=>$v){
$arr = $v; //注意此处赋值错误,应为$arr[]=$v; 你不是说赋值给一维数组吗,你的赋值是赋值给了变量,不是数组.
print_r($arr); //这里输出正常
}
}
print_r($arr);// 这里输出没值追问怎么让循环外面的$arr也同样有值?追答你把赋值语句改成,$arr[]=array($v[id],依次写出) ,估计就有值了。追问oreach($row as $k=>$v){
$arr = $v[这里ID怎么填,FOREACH不就是一条条循环把$v输出的吗];
print_r($arr);
}追答你写的也不是输出啊,输出时echo $v;
  • 3楼网友:狂恋
  • 2021-01-12 02:28
$sql = mysql_query("select * from `sdb_order_items` where `order_id`='20090312137181'");
$arr = array();
//单条数据查询 一维数组
$arr =mysql_fetch_row()($sql);
//多条数据查询 二维数组
while($row = mysql_fetch_array($sql)){
$arr[]= $row;
}
}
print_r($arr); //这里输出正常
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯