首页  >  文章  >  后端开发  >  PDO fetch的问题

PDO fetch的问题

WBOY
WBOY原创
2016-06-23 14:20:04962浏览

pdo 数据



小弟封装了一个函数,有三张图,我想把fetch()到的数据做while循环,可是出现了死循环,$roomName是有值的

求解

回复讨论(解决方案)

你的 getListRoom 调用了 fetchData,并返回他的结果
而 fetchData 每次都要执行 SQL 查询
除非出错或没有找到结果,fetchData 总是会返回查询到的结果的第一条记录
所以如果用 fetchData 的返回值作为循环终止的判断是不行的

你在 fetchData 方法中应该用 fetchall 返回结果集数组
然后用数组方法展示结果

谢谢,问题已经解决。但还有一点疑问,您的意思是fetch方法只能在循环时直接调用,可是又没有办法把fetch封装起来呢

可以把fetch封装起来,但是象你这样的不行!
比如 fetchData($sql) 的本意是执行 sql 指令并返回结果
由于结果可能是一条,也可能是多条。所以仅 fetch 就不能满足要求了,要用 fetchall
实际工作中,查询结果只有一条的情况很多,比如取得记录数、检查用户是否注册等
你可以再定义一个 fetchrow 方法,用 fetch 只返回一行

明白了,多谢!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn