PHPデータベース学習でクエリ結果の行数を取得するにはどうすればよいですか?

WBOY
リリース: 2023-04-10 18:48:02
オリジナル
4062 人が閲覧しました

前回の記事では「PHPデータベースを学習する際に複数のSQLコマンドを一度に実行するにはどうすればよいですか?」をお届けしました。 」では、PHP で複数の SQL コマンドを同時に実行するための関連知識が詳しく紹介されています。この記事では、PHP でクエリ結果の行数を取得する方法を見ていきます。みんなに役立つ!

PHPデータベース学習でクエリ結果の行数を取得するにはどうすればよいですか?

これまでの研究で、SQL クエリの結果を取得する方法と、複数の SQL ステートメントを一度に実行する方法を学習しましたが、PHP にはクエリ結果を取得できる関数があります。行数、つまりクエリ結果セットに含まれるデータの数。この関数は mysqli_num_rows() 関数です。次に、mysqli_num_rows()## を見てみましょう。 # 関数 知識。

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

のPHP では、SELECT ステートメントによってクエリされた結果セットに含まれるデータの数を取得したい場合は、mysqli_num_rows() 関数を使用する必要があります。まず、関数の構文構造を見てみましょう:

$mysqli_result -> num_rows;
ログイン後にコピー

これはオブジェクト指向の記述の構文です。以下はプロセス指向の記述の構文です:

mysqli_num_rows(mysqli_result $result)
ログイン後にコピー

何注意する必要があるのは次のとおりです。

  • $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;;
?>
ログイン後にコピー

出力結果:


PHPデータベース学習でクエリ結果の行数を取得するにはどうすればよいですか?

上記の例はオブジェクト指向で記述されていますが、プロセス指向での記述方法を見てみましょう:

<?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;;
?>
ログイン後にコピー

出力結果は上記の結果と同じです 上記の例では、mysqli_num_rows() 関数はデータセット内にデータがいくつあるかのクエリを完了します。

補足させていただきます。以前クエリ結果を学習したとき、出力結果はすべてインデックス配列または連想配列の形式で返されていましたが、オブジェクトの形式で返された結果についても補足させてください。これは、mysqli_fetch_object() 関数を通じて実現されます。

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

mysqli_fetch_object () この関数は結果セットから行を取得し、それをオブジェクトの形式で返すことができます。その構文形式は次のとおりです:

mysqli_result::fetch_object([string $class_name = "stdClass"[, array $params]])
ログイン後にコピー

これはオブジェクト指向の記述です。見てみましょう。

mysqli_fetch_object(mysqli_result $result[, string $class_name = "stdClass"[, array $params]])
ログイン後にコピー

注意すべき点は次のとおりです:

  • mysqli_result は取得された結果セットを表しますmysqli_query() 関数による;

  • $class_name オプションのパラメータとして表され、インスタンス化されたクラス名を指定し、属性を設定して戻り値を返すために使用されます。

  • ##$ params
  • はオプションのパラメーターを表し、$classname のコンストラクターに渡されるオプションのパラメーターの配列を指定するために使用されます。

    次に、例を通じて mysqli_fetch_object() 関数を見てみましょう。この関数は、結果セット内の現在の行を返し、各フィールドの値を出力します。
例は次のとおりです:

<?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();
    }
?>
ログイン後にコピー

出力結果:

これから、mysqli_fetch_object() 関数を使用できます。結果セットから結果を取得する 行を取得し、それをオブジェクトとして返します。 PHPデータベース学習でクエリ結果の行数を取得するにはどうすればよいですか?

ご興味がございましたら、「

PHP ビデオ チュートリアル

」をクリックして、PHP の知識をさらにご覧ください。

以上がPHPデータベース学習でクエリ結果の行数を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート