Wie erhalte ich die Anzahl der Zeilen mit Abfrageergebnissen beim PHP-Datenbanklernen?

WBOY
Freigeben: 2023-04-10 18:48:02
Original
4057 Leute haben es durchsucht

Im vorherigen Artikel habe ich Ihnen „Wie führe ich beim Erlernen einer PHP-Datenbank mehrere SQL-Befehle gleichzeitig aus?“ vorgestellt. 》, das die relevanten Kenntnisse zur gleichzeitigen Ausführung mehrerer SQL-Befehle in PHP beschreibt. In diesem Artikel werden wir uns ansehen, wie man die Anzahl der Zeilen von Abfrageergebnissen in PHP erhält. Ich hoffe, dass es für alle hilfreich ist.

Wie erhalte ich die Anzahl der Zeilen mit Abfrageergebnissen beim PHP-Datenbanklernen?

In früheren Studien haben wir gelernt, wie man SQL-Abfrageergebnisse erhält und wie man mehrere SQL-Anweisungen gleichzeitig ausführt. In PHP gibt es eine Funktion, die die Anzahl der Zeilen mit Abfrageergebnissen ermitteln kann, nämlich die Abfrage Ergebnis. Wie viele Daten gibt es in der Sammlung? Diese Funktion ist die Funktion mysqli_num_rows() Funktion. mysqli_num_rows() 函数,那接下来我们就来看一下mysqli_num_rows() 函数的相关知识吧。

<strong><span style="font-size: 20px;">mysqli_num_rows()</span></strong> 函数

在 PHP 中,想要获取由 SELECT 语句查询到的结果集中有多少条数据的话,则需要使用 mysqli_num_rows() 函数来实现。首先我们来看一下该函数的语法结构:

$mysqli_result -> num_rows;
Nach dem Login kopieren

这是面向对象写法的语法,下面是面向过程写法的语法:

mysqli_num_rows(mysqli_result $result)
Nach dem Login kopieren

其中我们需要注意的是:

  • $mysqli_result$result 为使用 mysqli_query() 函数返回的结果集。

  • mysqli_num_rows() 函数仅对 SELECT 语句有效,如果返回的行数大于 PHP_INI_MAX,则将行数以字符串的形式返回。

接下来我们通过示例来看一下mysqli_num_rows() 函数的用法吧

示例如下:

<?php
    $host     = &#39;localhost&#39;;
    $username = &#39;root&#39;;
    $password = &#39;root&#39;;
    $dbname   = &#39;test&#39;;
    $mysql    = new Mysqli($host, $username, $password, $dbname);
    if($mysql -> connect_errno){
        die(&#39;数据库连接失败:&#39;.$mysql->connect_errno);
    }else{
        $sql    = &#39;select name,sex,age from user&#39;;     // SQL 语句
        $result = $mysql -> query($sql);               // 执行上面的 SQL 语句
        $num    = $result -> num_rows;                 // 获取查询结果的行数
        $mysql -> close();
    }
    echo &#39;一共查询到 &#39;.$num.&#39; 条记录。&#39;;
?>
Nach dem Login kopieren

输出结果:

Wie erhalte ich die Anzahl der Zeilen mit Abfrageergebnissen beim PHP-Datenbanklernen?

上述示例是通过面向对象的写法,下面看一下面向过程的写法:

<?php
    $host     = &#39;localhost&#39;;
    $username = &#39;root&#39;;
    $password = &#39;root&#39;;
    $dbname   = &#39;test&#39;;
    $link     = @mysqli_connect($host, $username, $password, $dbname);
    if($link){
    
        $sql    = &#39;select name,sex,age from user&#39;;  // SQL 语句
        $result = mysqli_query($link, $sql);        // 执行 SQL 语句,并返回结果
        $num    = mysqli_num_rows($result);         // 获取查询结果的行数
        mysqli_close($link);
    }else{
        echo &#39;数据库连接失败!&#39;;
    }
    echo &#39;一共查询到 &#39;.$num.&#39; 条记录。&#39;;
?>
Nach dem Login kopieren

其输出结果与上述结果相同,上述事例中通过mysqli_num_rows() 函数完成了查询数据集有多少条数据的结果。

下面给大家补充一下,之前我们学习查询结果的时候输出的结果都是索引数组或者是关联数组的形式返回的结果,下面给大家补充一下通过对象的形式返回,那就要通过mysqli_fetch_object() 函数来实现。

<strong><span style="font-size: 20px;">mysqli_fetch_object()</span></strong> 函数

mysqli_fetch_object() 函数能够从结果集中取得一行,并以对象的形式返回,它的语法格式如下:

mysqli_result::fetch_object([string $class_name = "stdClass"[, array $params]])
Nach dem Login kopieren

这是面向对象的写法,下面我们看一下面向过程的写法语法格式如下:

mysqli_fetch_object(mysqli_result $result[, string $class_name = "stdClass"[, array $params]])
Nach dem Login kopieren

其中需要注意的是:

  • mysqli_result 表示mysqli_query() 函数获取的结果集;

  • $class_name 表示为可选参数,用来规定实例化的类名称,设置属性并返回;

  • $params

  • <strong><span style="font-size: 20px;">mysqli_num_rows()</span></strong>Funktion

Wenn Sie in PHP ermitteln möchten, wie viele Daten sich in der von der SELECT-Anweisung abgefragten Ergebnismenge befinden, müssen Sie die Funktion mysqli_num_rows() verwenden. Schauen wir uns zunächst die Syntaxstruktur der Funktion an:

<?php
    $host     = &#39;localhost&#39;;
    $username = &#39;root&#39;;
    $password = &#39;root&#39;;
    $dbname   = &#39;test&#39;;
    $mysql    = new Mysqli($host, $username, $password, $dbname);
    if($mysql -> connect_errno){
        die(&#39;数据库连接失败:&#39;.$mysql->connect_errno);
    }else{
        $sql = &#39;select name,sex,age from user&#39;;     // SQL 语句
        $result = $mysql -> query($sql);            // 执行上面的 SQL 语句
        if($result){
            while($obj = $result -> fetch_object()){
                printf(&#39;姓名:%s,性别:%s,年龄:%s <br>&#39;, $obj->name,$obj->sex,$obj->age);
            }
        }
        $mysql -> close();
    }
?>
Nach dem Login kopieren

Dies ist die Syntax für objektorientiertes Schreiben. Das Folgende ist die Syntax für prozessorientiertes Schreiben:
rrreee

Was wir beachten müssen, ist:

  • $mysqli_result und $result sind die Ergebnismengen, die von der Funktion mysqli_query() zurückgegeben werden .

    Wie erhalte ich die Anzahl der Zeilen mit Abfrageergebnissen beim PHP-Datenbanklernen?

  • mysqli_num_rows() Die Funktion ist nur für SELECT-Anweisungen gültig. Wenn die Anzahl der zurückgegebenen Zeilen größer als PHP_INI_MAX ist, wird die Anzahl der Zeilen zurückgegeben in Form einer Zeichenfolge.

    Als nächstes werfen wir einen Blick auf die Verwendung der Funktion mysqli_num_rows() anhand eines Beispiels

    Das Beispiel sieht wie folgt aus:🎜rrreee🎜Ausgabeergebnis:🎜🎜🎜Wie erhalte ich die Anzahl der Zeilen mit Abfrageergebnissen beim PHP-Datenbanklernen?🎜🎜Das obige Beispiel ist objektorientiert geschrieben. Werfen wir einen Blick darauf Bei der prozessorientierten Schreibweise:🎜rrreee🎜 Das Ausgabeergebnis ist das gleiche wie das obige Ergebnis. Im obigen Beispiel wird das Ergebnis der Abfrage, wie viele Daten sich im Datensatz befinden, durch mysqli_num_rows() vervollständigt. Funktion. 🎜🎜 Als wir zuvor gelernt haben, dass die Abfrageergebnisse alle in Form von Indexarrays oder assoziativen Arrays zurückgegeben wurden, möchte ich Ihnen nun die Ergebnisse hinzufügen, die in Form von Objekten zurückgegeben werden müssen Wird über die Funktion mysqli_fetch_object() zur Implementierung zurückgegeben. 🎜🎜<strong><span style="max-width:90%">mysqli_fetch_object()</span></strong> Funktion🎜🎜mysqli_fetch_object() Die Funktion kann eine Zeile aus der Ergebnismenge abrufen und in Form eines Objekts zurückgeben. Ihre Syntax lautet wie folgt: 🎜 rrreee🎜Dies ist für Um Objekte zu schreiben, werfen wir einen Blick auf das prozessorientierte Syntaxformat wie folgt: 🎜rrreee🎜Was beachtet werden muss, ist: 🎜
      🎜mysqli_result stellt die von der Funktion mysqli_query() erhaltene Ergebnismenge dar; 🎜🎜<li>🎜<code>$class_name stellt einen optionalen Parameter dar, der zur Angabe des instanziierten Klassennamens verwendet wird , Attribute festlegen und zurückgeben; 🎜🎜
    • 🎜$params Wird als optionale Parameter dargestellt und dient zur Angabe eines Arrays optionaler Parameter, die an den Konstruktor von $classname übergeben werden. 🎜🎜🎜🎜 Schauen wir uns als Nächstes ein Beispiel an: Die Funktion mysqli_fetch_object() gibt die aktuelle Zeile in der Ergebnismenge zurück und gibt den Wert jedes Felds aus. 🎜🎜Das Beispiel sieht wie folgt aus: 🎜🎜rrreee🎜Ausgabeergebnis: 🎜🎜🎜🎜🎜Daraus können wir die Funktion mysqli_fetch_object() verwenden, um eine Zeile aus der Ergebnismenge abzurufen und sie in Form eines Objekts zurückzugeben. 🎜🎜Bei Interesse können Sie auf „🎜PHP-Video-Tutorial🎜“ klicken, um mehr über PHP-Kenntnisse zu erfahren. 🎜

Das obige ist der detaillierte Inhalt vonWie erhalte ich die Anzahl der Zeilen mit Abfrageergebnissen beim PHP-Datenbanklernen?. 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