主机参考:VPS测评参考推荐/专注分享VPS服务器优惠信息!若您是商家可以在本站进行投稿,查看详情!此外我们还提供软文收录、PayPal代付、广告赞助等服务,查看详情! |
我们发布的部分优惠活动文章可能存在时效性,购买时建议在本站搜索商家名称可查看相关文章充分了解该商家!若非中文页面可使用Edge浏览器同步翻译!PayPal代付/收录合作 |
帝国CMS开发的fetch()和fetch1()怎么用?
Fetch()和fetch1()是帝国CMS二次开发中常用的函数。下面是fetch1()的正确写法和一些用法:
(注意:fetch()和fetch1()函数位于e/class/db_sql.php文件中。)
1.fetch()
一般来说,我们用它来循环出一个列表或者列出多条信息;例如,以下示例获取成员组ID为1的所有成员ID和用户名;fetch()的参数是SQL语句执行的结果,即先执行query();然后将query()的执行结果作为fetch()的参数;
代码如下:
查询(& quotselect userid,username from { $ dbtbpre } enews member where groupid = 1 & quot;);while($ r = $ empire ->;fetch( $sql )){ echo $r [userid]。'---'。$ r[用户名]。'';} db _ close();$ empire = null
2.fetch1()
简单来说,我们只在查询一条信息的时候使用,比如获取USERID为1的会员信息;与fetch()不同的是,fetch1()的参数是SQL语句而不是执行结果,不需要第二次使用SQL语句,直接进去就好;Fetch1()只取一段数据;
代码如下所示
fetch 1(& quot;select userid,username from { $ dbtbpre } enews member where userid = 1 limit 1 & quot;);echo $r[userid]。'';echo $ r[用户名]。'';db _ close();$ empire = null
进一步讨论:
1.获取一条信息时,fetch()和fetch1()都可用。代码如下:
代码如下:
fetch 1(& quot;select id,title from { $ dbtbpre } ecms _ news where classid = 34 & quot;);print _ r($ R1);回声& # 39;& lthr & gt';$ SQL = $ empire -& gt;查询(& quotselect id,title from { $ dbtbpre } ecms _ news where classid = 34 & quot;);$r=$empire->fetch($ SQL);print _ r($ r);回声& # 39;& lthr & gt';db _ close();$ empire = null
2.如果想用fech1()循环数据,可以测试下面的代码,你会发现结果很惨烈,没完没了,赶紧关闭浏览器;
代码如下:
fetch 1(& quot;select id,title from { $ dbtbpre } ecms _ news where classid = 34 & quot;)){ echo $ R1[title];} db _ close();$ empire = null3.fetch()也是死循环写的;
代码如下:
查询(& quotselect id,title from { $ dbtbpre } ecms _ news where classid = 341 & quot;);$r=$empire->fetch($ SQL);while($r)){ echo $r[title]。'';} db _ close();$ empire = null4.为什么?。。;Trylife曾经说过,没有代码就没有真理。让我们来看看源文件的内容:位置:e/class/db _ sql.php。
代码如下:
//执行Mysql _ fetch _ array()函数fetch($sql)//该方法的参数为$ sql,是SQL语句{$ this->的执行结果;r = MySQL _ fetch _ array($ SQL);return $ this -& gt;r;}//执行fetch1(mysql_fetch_array()) //该方法与fetch()的区别如下:1 .这个方法的参数是$query,是一个sql语句//2。该方法用于while(),for()数据库指针不会自动下移,但fetch()可以自动下移。函数fetch 1($ query){ $ this -& gt;SQL = $ this -& gt;查询($ query);$ this -& gt;r = MySQL _ fetch _ array($ this -& gt;SQL);return $ this -& gt;r;} ①.看到fetch1()的函数体中的行数比fetch () "$ this->多;SQL = $ this -& gt;查询($ query);";Fetch1()首先执行了查询();所以当你得到一行信息时,直接fetch1()就可以了,少打代码;
②.上面3和4中的无限循环是PHP的一个编写问题,而($ r = $ empire ->;Fetch($query))函数先取查询结果第一行的内容,然后记录指针自动移动到下一行;注意:mysql_fetch_array只获取查询结果的第一行数据;没有写在while()括号里的Mysql_fetch_array()始终只能读取第一行数据,所以是死鸟!
以上是帝国CMS二次开发中如何使用fetch()和fetch1()的细节。更多信息请关注主机参考的其他相关文章!
这几篇文章你可能也喜欢:
- 帝国cms用户点击记录时间不正确怎么办(帝国cms数据恢复)
- 帝国忘记cms密码怎么办?
- 帝国cms 如何找回忘记的密码(帝国cms 用户手册)
- 帝国如何查看cms记录用户点击的时间(帝国cms更新非常慢)
- 帝国 cms主页不显示时怎么办(帝国 cms图片不显示时怎么办)
本文由主机参考刊发,转载请注明:如何在帝国CMS(帝国CMS官方完整版教程)二次开发中使用fetch()和fetch1() https://zhujicankao.com/91615.html
评论前必须登录!
注册