小编给大家分享一下帝国CMS二次开发之fetch()和fetch1()的使用方法,希望大家阅读完这篇文章后大所收获、下面让我们一起去探讨吧!
<强>帝国CMS二次开发之fetch()和fetch2()怎么用? 强>
fetch()和fetch2()是帝国CMS二次开发常用到的函数、下面介绍fetch()和fetch2()正确的写法和一些用处:
(注:fetch()和fetch2()函数位于e/类/db_sql.php文件中)
1. fetch ()
一般情况下我们用来,循环出列表或者列出多条信息,例如下面的例子取得会员组ID为1的所有会员ID和用户名;fetch()的参数是SQL语句执行的结果也就是先执行查询();再把查询()的执行结果作为参数给fetch()使用;
代码如下:
查询(“选择用户名,用户名从{$ dbtbpre} enewsmember groupid=1“); 而(r=美元帝国→获取(sql)美元){ echo $ r(标识)。& # 39;——& # 39;。本市$ r【用户名】# 39; & # 39;; } db_close (); 美元帝国=零;
2. fetch2 ()
简单的说我们查询一条信息的时候才用它,比如获取用户id为1的会员资料;和fetch()不同的是fetch2()的参数是SQL语句而不是执行结果,所以在SQL语句不第二次使用的情况下直接进去就好了;fetch2()只取一条数据;
代码如下
fetch2(“选择用户名,用户名从{$ dbtbpre} enewsmember USERID=1限制1“); echo $ r (userid)强生# 39; & # 39;; 本市echo $ r【用户名】# 39; & # 39;; db_close (); 美元帝国=零;
进一步讨论一下:
1。在取一条信息的时候fetch()和fetch2()都是可以的,代码如下:
代码如下:
fetch2(“选择id、标题从{$ dbtbpre} ecms_news classid=34“); print_r (r1); 回声& # 39;& lt; hr> & # 39;; sql=美元帝国→查询(“选择id、标题从{$ dbtbpre} ecms_news classid=34“); r=美元帝国→获取($ sql); print_r ($ r); 回声& # 39;& lt; hr> & # 39;; db_close (); 美元帝国=零;
2。如果你想用fech2()循环数据,你可以测试下下面的代码,你会发现结果悲惨的,死循环,赶紧关浏览器;
代码如下:
fetch2(“选择id、标题从{$ dbtbpre} ecms_news classid=34“)) { echo $ r1[标题]; } db_close (); 美元帝国=零;
3. fetch()同样死翘翘的循环写法;
代码如下:
查询(“选择id、标题从{$ dbtbpre} ecms_news classid=341“); r=美元帝国→获取($ sql); 而($ r)) { echo $ r[标题]强生# 39; & # 39;; } db_close (); 美元帝国=零;
4。为什么呢…;trylife曾说过无码无真相,还是看下源文件中的内容:位置:e/类/db_sql。php
代码如下:
//执行mysql_fetch_array () 函数获取(sql)美元//此方法的参数是sql就美元是sql语句执行结果 { $ this→r=mysql_fetch_array ($ sql); 返回$ this→r; }//执行fetch2 (mysql_fetch_array ())//此方法与fetch()的区别是:1,此方法的参数是查询就美元是sql语句//2,此方法用于(),()的数据库指针不会自动下移,而fetch()可以自动下移。 函数fetch2(查询) { $ this→sql=$这→查询(查询); $ this→r=mysql_fetch_array ($ this→sql); 返回$ this→r; }
①。看到fetch2()函数体内比fetch()多了行”$ this→sql=$这→查询(查询)美元;”;fetch2()先执行了查询();所以获取一行信息的时候,就直接fetch2()吧,少打代码;
②。上边3和4中的死循环是PHP的书写问题,而(r=美元帝国→获取(查询)美元)函数先取查询结果第一行内容,之后记录指针自动移动到下一行,注:mysql_fetch_array也就只先取得查询结果第一行数据,没写在在()括号内的mysql_fetch_array()那只能一直读第一行数据,所以就死循环鸟!
看完了这篇文章,相信你对帝国CMS二次开发之fetch()和fetch1()的使用方法有了一定的了解,想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!