欢迎访问新酱博客!

php怎么判断mysqli的结果集是否为空

PHP 新酱 阅读:182 0评论

php怎么判断mysqli的结果集是否为空

今天做了一个简单的判断添加后台,主要判断这个链接在数据库中是否存在,如果不存在则开始添加,就是这么一个小功能,差点气翻我,上次这样还是mysqli_query查询为空不返回false的时候。大概一段时间没有碰mysqli了,忘记了怎么判断结果集是否为空,折腾了1个小时,最后才想起来,希望大家不要跟我一样健忘。

php怎么判断mysqli的结果集是否为空

mysqli_query()不能用于判断

因为我学习mysqli的时候自己记过笔记,粗略的看了一眼,在我的潜意识中mysqli_query()查询成功就返回结果集,查询为空那不就是false了,于是我一开始是这样判断的

结果显而易见,即便是数据库确实没有任何数据,$re也绝对不会等于false,因为mysqli_query()不能用于判断查询是否为空!

我仔细的看了一遍我记录的关于mysqli_query()的笔记,终于发现了这样一句话:

mysqli_query() 仅对 SELECT,SHOW 或 DESCRIBE 语句返回一个mysqli_result结果集对象,如果查询执行不正确则返回 FALSE。

注意重点!查询不正确返回false,而不是查询为空返回false!!

粗心又浪费了我一个小时的时间,希望自己以后更加的细心。

mysqli_num_rows()才能用于判断

一番查找后找到了用于判断结果集是否为空的命令mysqli_num_rows(),它可以获取到结果集中的数据行数,这就好办了,将上面的错误代码进行以下修改:

经过测试,代码完美运行,如果结果集为空,mysqli_num_rows()获取的行数就为0,注意,mysqli_num_rows()仅对select语句有效。

新酱博客 , 版权所有丨本站资源仅限于学习研究,严禁从事商业或者非法活动!丨网站采用BY-NC-SA协议进行授权
转载请注明原文链接:https://www.xiaorenjc.net/465.html
喜欢 (1)
评论头像
发表我的评论
取消评论
表情

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

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(4)个小伙伴在吐槽
  1. 小任啊 你咋个开始教PHP了啊
    高兵2019-08-13 17:04 回复
    • 我从.net转php了。
      Lonely2019-08-14 16:37 回复
      • 么以后我可以来请教你了嘛
        高兵2019-08-14 16:40 回复
        • 可以可以,没有问题。 🙂
          Lonely2019-08-14 16:42 回复