ThinkPHP-Abfragedaten bieten hauptsächlich die folgenden Arten von Abfragen:
select() ist die am häufigsten verwendete gewöhnliche Abfragemethode in ThinkPHP und das Ergebnis ist ein zweidimensionales Array. findAll() ist ein Alias für die Methode select() und es wird empfohlen, select() zu verwenden.
Das folgende Beispiel liest alle Daten in der Benutzertabelle und zeigt sie an:
public function read(){ $Dao = M("User"); // 查询数据 $list = $Dao->select(); //dump($list);// 用 dump() 可以在调试阶段查看数据是否已读取 // 模板变量赋值 $this->assign("list", $list); // 输出模板 $this->display(); }
Angenommen, die dem obigen Beispiel entsprechende Klassendatei ist Lib/Action/ IndexAction.class.php, dann ist die entsprechende Vorlagendatei Tpl/default/Index/read.html.
Die Vorlagendatei wird verwendet, um die Daten der gerade gelesenen Benutzertabelle anzuzeigen. Wenn Sie während der Lernphase keine Vorlagen verwenden möchten, können Sie auch direkt die foreach-Syntax verwenden, um die gelesenen Daten direkt innerhalb der read()-Operation anzuzeigen. Das Folgende ist der entsprechende Codeausschnitt der Vorlage. Wir zeigen die gelesenen Daten in einer Tabelle an:
<table border="1"> <tr> <th width="10%">ID</th> <th width="30%">用户名</th> <th width="30%">电子邮件</th> <th>注册时间</th> </tr> <volist name="list" id="vo"> <tr> <td align="center">{$vo['uid']}</td> <td>{$vo['username']}</td> <td>{$vo['email']}</td> <td>{$vo['regdate']|date='Y-m-d H:i',###}</td> </tr> </volist> </table>
Die Methode select() fragt standardmäßig alle Datenfelder ab Wenn Sie ein oder mehrere Felder abfragen möchten, müssen Sie die Methode filed() verwenden.
filed() ist eine Methode, die zum kontinuierlichen Betrieb von ThinkPHP gehört. Im obigen Beispiel werden beispielsweise nur der Benutzername und die E-Mail-Adresse abgefragt, dann sollte die Abfragemethode geändert werden in:
$list = $Dao->field('username,email')->select();
Mit der kohärenten Operation von ThinkPHP können Sie ganz einfach Abfragebedingungen für die Datenabfrage verwenden. Nachfolgend finden Sie einige Beispiele für einfache Abfragebedingungen.
…… // 构造查询条件 $condition['username'] = 'Admin'; // 查询数据 $list = $Dao->where($condition)->select(); ……
Die obige Abfrage sind die Daten von Benutzername='Admin'. Ausführlichere Informationen zu den ThinkPHP Where-Bedingungen finden Sie unter „ThinkPHP Where-Bedingungen“.
Verwenden Sie ORDER BY in der Abfrage, um die Daten zu sortieren:
…… // 查询数据 $list = $Dao->order('uid DESC')->select(); ……
In diesem Beispiel werden die Daten nach ORDER BY uid DESC abgefragt und die order()-Methode Die Bedeutung der Parameter in ist genau die gleiche wie in der SQL-Anweisung.
Verwenden Sie LIMIT in der Abfrage, um die Anzahl der von den Daten zurückgegebenen Datensätze zu begrenzen:
…… // 查询数据 $list = $Dao->limit('4,5')->select(); ……
In diesem Beispiel werden die 5-10 Datensätze in der entfernt limit()-Methode Die Bedeutung des Parameters ist genau die gleiche wie LIMIT in der SQL-Anweisung.
ThinkPHP ermöglicht das gemeinsame Schreiben jeder Methode im Datenobjekt, um zu funktionieren, wie zum Beispiel:
$list = $Dao->order('uid DESC')->limit('4,5')->select();
Weitere technische Artikel zu ThinkPHP finden Sie unter Lernen Sie in der ThinkPHP-Tutorial-Kolumne !
Das obige ist der detaillierte Inhalt vonThinkPHP-Abfragedatenauswahlmethode (findAll).. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!