Empire CMS の二次開発で fetch() と fetch1() を使用する方法は?
fetch( ) と fetch1() は、Imperial CMS の二次開発でよく使われる関数です。fetch() と fetch1() の正しい書き方と使い方を以下に紹介します。 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;
2.fetch1()
単純につまり、USERID 1 のメンバー情報を取得するなど、情報をクエリする場合にのみ使用します。fetch() との違いは、fetch1() のパラメーターは実行結果ではなく SQL ステートメントであるため、直接入力するだけです。 2 回目に SQL ステートメントを使用する必要はありません; fetch1() は 1 つのデータのみを受け取ります;
コードは次のとおりです
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() は両方とも Yes で、コードは次のとおりです:
コードは次のとおりです:
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() を実行します。 first; したがって、情報行を取得するときは、直接 fetch1 () するだけで、コードの入力が少なくなります;
②. 上記の 3 と 4 の無限ループは、PHP の記述上の問題です。 >fetch($query)) 関数は最初にクエリ結果をフェッチします コンテンツの最初の行、その後レコード ポインタは自動的に次の行に移動します; 注: mysql_fetch_array はクエリ結果のデータの最初の行のみを取得します; mysql_fetch_array() while() 括弧内に記述されていないものは、データの最初の行しか読み取ることができないため、鳥の無限ループが発生します。
以上がImperial CMS の二次開発での fetch() と fetch1() の使用方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

WebStorm Mac版
便利なJavaScript開発ツール

MinGW - Minimalist GNU for Windows
このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

ホットトピック









