Heim  >  Artikel  >  Backend-Entwicklung  >  请教个问题 mysql记录集不支持movenext方法吗

请教个问题 mysql记录集不支持movenext方法吗

WBOY
WBOYOriginal
2016-06-23 13:58:27889Durchsuche

 function GetTags($device)
{
  $sql = "select tagname from TagList where device='$device'"; 
  $rs = mysql_query($sql); 
  while(! $rs->eof)   //将记录集存储到二维数组
 {   
         $tags[] = array('tagname'=>$rs->fields['tagname']->value);
         $rs->MoveNext();
   }
   return $tags;
   mysql_free_result($rs); //关闭数据集
}
为什么我在php查询mysql数据库,操作记录集时使用movenext方法一直报错no-object?难道mysql记录集不支持这个方法吗,那该如何实现?另外循环里的数组$tags在循环外能正确返回吗?
我想将记录集存储到数组,并返回这个数组,请高手给看看!


回复讨论(解决方案)

是的,不支持

while($row = mysql_fetch_assoc($rs))   //将记录集存储到二维数组{     $tags[] = $row;}

那return $tags;
这条语句能返回值吗?

当然能!
你遇到了什么问题?

$tags只有一条记录,很奇怪,如果查询多个字段,咋存到二维数组?存储后效果$tags('tagname','device','unit'),能够$tags[$i][tagname]这样引用,这该咋存啊?mysql这块和Oracle不太一样,请帮帮忙,谢谢!
 $sql = "select tagname,device,unit from TagList where device='$device'"; 
  $rs = mysql_query($sql); 
.......

奇怪了,经

while($row = mysql_fetch_assoc($rs))   //将记录集存储到二维数组{     $tags[] = $row;}

后 $tags 不就是二维数组了吗?

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:关于for循环的一个错误Nächster Artikel:phprpc百度ping