10分钟搞定帝国CMS二次开发之fetch()和fetch1()用法
fetch()和fetch1()是帝国CMS二次开发常用到的函数,下面介绍fetch()和fetch1()正确的写法和一些用处 :
(注:fetch()和fetch1()函数位于e/class/db_sql.php文件中)
1.fetch()
一般情况下我们用来,循环出列表或者列出多条信息;例如下面的例子取得会员组ID为1的所有会员ID和用户名;fetch()的参数是SQL语句执行的结果也就是先执行query();再把query()的执行结果作为参数给fetch()使用;
代码如下:
query( "select userid,username from {$dbtbpre}enewsmember where groupid=1" ); while ( $r = $empire ->fetch( $sql )){ echo $r [userid]. '---' . $r [username].' '; } db_close(); $empire =null;
推荐学习《帝国cms教程》
2.fetch1()
简单的说我们查询一条信息的时候才用它,比如获取USERID为1的会员资料;和fetch()不同的是fetch1()的参数是SQL语句而不是执行结果,所以在SQL语句不第二次使用的情况下直接进去就好了;fetch1()只取一条数据;
代码如下:
fetch1("select userid,username from {$dbtbpre}enewsmember where userid=1 limit 1"); echo $r[userid].' '; echo $r[username].' '; db_close(); $empire=null;
进一步讨论一下:
1.在取一条信息的时候fetch()和fetch1()都是可以的,代码如下:
代码如下:
fetch1("select id,title from {$dbtbpre}ecms_news where classid=34"); print_r($r1); echo '<hr>'; $sql=$empire->query("select id,title from {$dbtbpre}ecms_news where classid=34"); $r=$empire->fetch($sql); print_r($r); echo '<hr>'; db_close(); $empire=null;
2.如果你想用fech1()循环数据,你可以测试下下面的代码,你会发现结果悲惨的,死循环,赶紧关浏览器;
代码如下:
fetch1("select id,title from {$dbtbpre}ecms_news where classid=34")){ echo $r1[title]; } db_close(); $empire=null;
3.fetch()同样死翘翘的循环写法;
代码如下:
query("select id,title from {$dbtbpre}ecms_news where classid=341"); $r=$empire->fetch($sql); while($r)){ echo $r[title].' '; } db_close(); $empire=null;
4.为什么呢。。。;trylife曾说过无码无真相,还是看下源文件中的内容:位置:e/class/db_sql.php
代码如下:
//执行mysql_fetch_array() function fetch($sql)//此方法的参数是$sql就是sql语句执行结果 { $this->r=mysql_fetch_array($sql); return $this->r; } //执行fetch1(mysql_fetch_array()) //此方法与fetch()的区别是:1、此方法的参数是$query就是sql语句 //2、此方法用于while(),for()数据库指针不会自动下移,而fetch()可以自动下移。 function fetch1($query) { $this->sql=$this->query($query); $this->r=mysql_fetch_array($this->sql); return $this->r; }
①.看到fetch1()函数体内比fetch()多了行”$this->sql=$this->query($query);“;fetch1()先执行了query();所以获取一行信息的时候,就直接fetch1()吧,少打代码;
②.上边3和4中的死循环是PHP的书写问题,while($r=$empire->fetch($query)) 函数先取查询结果第一行内容,之后记录指针自动移动到下一行;注:mysql_fetch_array也就只先取得查询结果第一行数据;没写在 while()括号内的mysql_fetch_array()那只能一直读第一行数据,所以就死循环.
Atas ialah kandungan terperinci 10分钟搞定帝国CMS二次开发之fetch()和fetch1()用法. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Peta laman Empire CMS boleh didapati dengan mengakses fail config.inc.php dan menyemak tetapan peta laman web. Jika ditetapkan kepada "hidup", peta laman didayakan. Laluan peta laman terletak dalam tetapan sitemapurl dan boleh diakses melalui pelayar atau dimuat turun melalui FTP.

Tetapan mudah alih Empire CMS terletak dalam "Templat Mudah Alih" modul "Pengurusan Templat" Langkah khusus termasuk: mendayakan templat, memilih saluran aplikasi, mengedit kandungan templat dan menyimpan tetapan.

Lokasi yang sesuai untuk fail templat Empire CMS ialah /e/template/default/skin/default/ Kedua, ia juga boleh diletakkan dalam /e/data/skins/ dan /e/skin/ mengekalkan struktur folder dan menetapkan kebenaran fail dan sandaran biasa.

Fail konfigurasi pangkalan data Imperial CMS terletak dalam direktori akar tapak web e/config/db.inc.php Ia mengandungi maklumat konfigurasi berikut: $dbhost: alamat pelayan pangkalan data $dbuser: nama pengguna pangkalan data $dbpass: kata laluan pangkalan data $dbname: nama pangkalan data $dbport :Port pangkalan data $dbcharset: Set aksara pangkalan data

Lokasi muat turun templat Empire CMS: Muat turun templat rasmi: https://www.phome.net/template/ Tapak web templat pihak ketiga: https://www.dedecms.com/diy/https://www.0978.com. cn /https://www.jiaocheng.com/Kaedah pemasangan: Muat turun templat Nyahzip templat Muat naik templat Pilih templat

Antara muka penerbitan automatik Empire CMS terletak di /e/api/web/postinfo.php Langkah-langkah penggunaan adalah seperti berikut: lawati /e/api/web/postinfo.php alamat dan gunakan HTTP POST untuk menyerahkan tajuk artikel, ID lajur, ID kategori, pengarang dan artikel Kandungan dan antara muka data lain akan mengembalikan respons dalam format JSON, yang mengandungi hasil penerbitan dan ID artikel.

Pemalam tolak aktif Baidu cms imperial terletak dalam direktori akar /e/api/baidu/push.php. Langkah konfigurasi khusus adalah seperti berikut: 1. Muat naik fail pemalam ke laluan yang ditentukan. 2. Konfigurasikan pilihan "Baidu Active Push" dalam latar belakang Imperial CMS, termasuk alamat tolak, Kunci API dan selang tolak. 3. Dapatkan maklumat push Baidu: Alamat push: https://data.zz.baidu.com/urls?site=YOUR_SITE&token=YOUR_API_KEY, API Key: log masuk ke platform sumber carian Baidu untuk mendapatkan. 4. Kemas kini Kunci API dengan kerap dan tetapkan selang tolak yang munasabah.

Ya, Empire CMS ialah sistem pengurusan kandungan (CMS) percuma dan sumber terbuka. Ia adalah CMS ringan yang kaya dengan ciri dan mudah digunakan. Empire CMS dilesenkan di bawah GNU General Public License (GPL), yang bermaksud ia percuma untuk dimuat turun, dipasang dan digunakan. Untuk kegunaan komersil, ia menawarkan versi berbayar yang menawarkan ciri dan sokongan tambahan seperti pengurusan iklan, pembayaran dalam talian dan sokongan teknikal premium.
