Heim > PHP-Framework > Denken Sie an PHP > ThinkPHP-Abfragedatenauswahlmethode (findAll).

ThinkPHP-Abfragedatenauswahlmethode (findAll).

步履不停
Freigeben: 2019-06-25 19:42:53
Original
6674 Leute haben es durchsucht

ThinkPHP-Abfragedatenauswahlmethode (findAll).

ThinkPHP-Abfragedaten

ThinkPHP-Abfragedaten bieten hauptsächlich die folgenden Arten von Abfragen:

  1. select: normale Abfrage, wie findAll( ) Methode
  2. find: Einen Datensatz abrufen, der die Abfragebedingungen erfüllt
  3. getBy dynamische Abfrage: Einen Datensatz abrufen, der die Abfragebedingungen basierend auf einem bestimmten Feld erfüllt
  4. getField: Get der Wert eines bestimmten Feldes oder ein Indexarray aus mehreren Feldern
  5. Intervallabfrage: Rufen Sie die Intervalldatensätze ab, die die Abfragebedingungen erfüllen
  6. Statistische Abfrage: Rufen Sie die statistischen Daten ab, die die Abfragebedingungen erfüllen
  7. Positionierungsabfrage: Rufen Sie diejenigen ab, die den Abfragebedingungen entsprechen. Ein oder mehrere Datensätze von Abfragebedingungen
  8. Native SQL-Abfrage: Unterstützt das Abfragen oder Ausführen von Vorgängen in nativem SQL

select()

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.

Lesevorgang

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();
}
Nach dem Login kopieren

Angenommen, die dem obigen Beispiel entsprechende Klassendatei ist Lib/Action/ IndexAction.class.php, dann ist die entsprechende Vorlagendatei Tpl/default/Index/read.html.

Datenanzeigevorlage

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[&#39;uid&#39;]}</td>
        <td>{$vo[&#39;username&#39;]}</td>
        <td>{$vo[&#39;email&#39;]}</td>
        <td>{$vo[&#39;regdate&#39;]|date=&#39;Y-m-d H:i&#39;,###}</td>
    </tr>
    </volist>
</table>
Nach dem Login kopieren

field() Fragen Sie das angegebene Feld ab.

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(&#39;username,email&#39;)->select();
Nach dem Login kopieren

Abfragebedingungen verwenden

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.

where()-Bedingung

……   
    // 构造查询条件
    $condition[&#39;username&#39;] = &#39;Admin&#39;;
    // 查询数据
    $list = $Dao->where($condition)->select();
……
Nach dem Login kopieren

Die obige Abfrage sind die Daten von Benutzername='Admin'. Ausführlichere Informationen zu den ThinkPHP Where-Bedingungen finden Sie unter „ThinkPHP Where-Bedingungen“.

Sortierung nach ORDER BY

Verwenden Sie ORDER BY in der Abfrage, um die Daten zu sortieren:

……   
    // 查询数据
    $list = $Dao->order(&#39;uid DESC&#39;)->select();
……
Nach dem Login kopieren

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.

LIMIT-Limit

Verwenden Sie LIMIT in der Abfrage, um die Anzahl der von den Daten zurückgegebenen Datensätze zu begrenzen:

……   
    // 查询数据
    $list = $Dao->limit(&#39;4,5&#39;)->select();
……
Nach dem Login kopieren

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.

Kontinuierlicher Betrieb

ThinkPHP ermöglicht das gemeinsame Schreiben jeder Methode im Datenobjekt, um zu funktionieren, wie zum Beispiel:

$list = $Dao->order(&#39;uid DESC&#39;)->limit(&#39;4,5&#39;)->select();
Nach dem Login kopieren

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!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage