首頁 CMS教程 帝國CMS 10分鐘搞定帝國CMS二次開發fetch()和fetch1()用法

10分鐘搞定帝國CMS二次開發fetch()和fetch1()用法

Nov 28, 2019 pm 01:50 PM
帝國cms

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 &#39;<hr>&#39;;
$sql=$empire->query("select id,title from {$dbtbpre}ecms_news where classid=34");
$r=$empire->fetch($sql);
print_r($r);
echo &#39;<hr>&#39;;
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].&#39;
&#39;;
}
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()那隻能一直讀第一行數據,所以就死循環.

以上是10分鐘搞定帝國CMS二次開發fetch()和fetch1()用法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

帝國cms網站地圖在哪 帝國cms網站地圖在哪 Apr 17, 2024 am 10:48 AM

透過存取config.inc.php檔案並檢查dositemap設置,可以找到帝國CMS網站地圖。如果設定為"on",則網站地圖已啟用。網站地圖路徑位於sitemapurl設定中,可以透過瀏覽器存取或透過FTP下載。

帝國cms手機端設置在哪裡 帝國cms手機端設置在哪裡 Apr 17, 2024 pm 12:12 PM

帝國CMS的手機端設定位於「模板管理」模組的「手機模板」中,具體步驟包括:啟用模板、選擇應用頻道、編輯模板內容,並儲存設定。

帝國cms模板文件放在哪裡好用 帝國cms模板文件放在哪裡好用 Apr 17, 2024 am 07:22 AM

帝國CMS模板檔案理想的放置位置是/e/template/default/skin/default/,其次還可以放置在/e/data/skins/和/e/skin/,需要注意保持資料夾結構、設定檔案權限以及定期備份。

帝國cms資料庫設定檔在哪裡找 帝國cms資料庫設定檔在哪裡找 Apr 17, 2024 am 06:42 AM

帝國CMS資料庫設定檔位於網站根目錄下e/config/db.inc.php,它包含以下設定資訊:$dbhost:資料庫伺服器位址$dbuser:資料庫使用者名稱$dbpass:資料庫密碼$dbname:資料庫名稱$dbport :資料庫連接埠$dbcharset:資料庫字元集

帝國cms資源網模板在哪 帝國cms資源網模板在哪 Apr 17, 2024 am 10:00 AM

帝國CMS模板下載位置:官方模板下載:https://www.phome.net/template/第三方模板網站:https://www.dedecms.com/diy/https://www.0978.com.cn /https://www.jiaocheng.com/安裝方式:下載模板解壓縮模板上傳模板選擇模板

帝國cms自動發布接口在哪 帝國cms自動發布接口在哪 Apr 17, 2024 am 09:03 AM

帝國CMS的自動發布介面位於/e/api/web/postinfo.php,使用步驟如下:存取/e/api/web/postinfo.php 位址使用HTTP POST 提交文章標題、欄位ID、分類ID、作者和文章內容等資料介面會傳回一個JSON 格式的回應,其中包含發佈結果和文章ID

帝國cms百度主動推送插件在哪 帝國cms百度主動推送插件在哪 Apr 17, 2024 am 11:00 AM

帝國cms百度主動推送插件位於根目錄/e/api/baidu/push.php。具體設定步驟如下:1. 上傳外掛程式至指定路徑。 2. 在帝國cms後台設定「百度主動推送」選項,包括推送位址、API Key和推送間隔。 3. 取得百度推送資訊:推送位址:https://data.zz.baidu.com/urls?site=YOUR_SITE&token=YOUR_API_KEY,API Key:登入百度搜尋資源平台取得。 4. 定期更新API Key,並設定合理的推送間隔。

帝國cms是免費的嗎 帝國cms是免費的嗎 Apr 17, 2024 am 11:24 AM

是的,帝國CMS是一款免費的開源內容管理系統(CMS)。它是一款輕量CMS,功能豐富,易於使用。帝國CMS遵循GNU通用公共授權(GPL),這意味著它可以免費下載、安裝和使用。對於商業用途,它提供了付費版本,提供額外的功能和支持,例如廣告管理、線上支付和高級技術支援。

See all articles