ホームページ > バックエンド開発 > PHPチュートリアル > PHP で SQL クエリ結果を取得するためによく使用される関数 (詳細な例)

PHP で SQL クエリ結果を取得するためによく使用される関数 (詳細な例)

WBOY
リリース: 2023-04-10 18:44:01
オリジナル
6000 人が閲覧しました

前回の記事では、「PHP での mysqli_select_db 関数と mysqli_query 関数の使用法」をご紹介し、この 2 つの関数の使い方と主な機能について詳しく説明しました。 PHP で SQL クエリの結果を取得する方法を引き続き見ていきます。みんなが助けてくれるといいですね!

PHP で SQL クエリ結果を取得するためによく使用される関数 (詳細な例)

前の記事では、

mysqli_query() 関数を呼び出す SQL ステートメントの実行方法について説明しました。データベース情報はすでにクエリされていますが、日々の開発では、必要な情報を取得するために結果を処理する必要があります。次に、PHP で結果を処理するために一般的に使用されるいくつかの関数を見てみましょう。

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

mysqli_fetch_row() 関数結果セットから行を取得し、それをインデックス配列の形式で返すことができます。構文形式は次のとおりです:

mysqli_result::fetch_row()
ログイン後にコピー

これはオブジェクト指向の記述であり、プロセス指向の記述は次のとおりです。 :

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

次の点に注意する必要があります:

mysqli_result$result は、mysqli_query() 関数を使用して取得された結果セットとして表されます。

次に、例を通して mysqli_fetch_row() 関数の使用法を見てみましょう。例は次のとおりです:

<?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 语句
        $data   = $result -> fetch_row();
        $mysql -> close();
    }
    echo &#39;<pre class="brush:php;toolbar:false">&#39;;
    print_r($data);
?>
ログイン後にコピー

出力結果:


PHP で SQL クエリ結果を取得するためによく使用される関数 (詳細な例)

上記の例では、データベース内の 1 行のデータが mysqli_fetch_row() 関数を通じて正常にクエリされ、インデックス配列の形式で返されます。次に、さまざまな返品フォームを見てみましょう。

<strong>mysqli_fetch_assoc()<span style="max-width:90%"></span></strong> 関数

mysqli_fetch_assoc() 関数結果セットから行を取得し、それを連想配列の形式で返すことができます。この関数の構文形式は次のとおりです:

mysqli_result::fetch_assoc()
ログイン後にコピー

これはオブジェクト指向の構文形式であり、次は次のとおりです。手続き指向の構文形式:

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

次の点に注意してください:

mysqli_result および $result は、mysqli_query() 関数を使用して取得された結果セットとして表されます。

次に、例を通して mysqli_fetch_assoc() 関数の使用法を見てみましょう。例は次のとおりです:

<?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 语句,并返回结果
        $data   = mysqli_fetch_assoc($result);      // 从结果集中获取一条数据
        mysqli_close($link);
    }else{
        echo &#39;数据库连接失败!&#39;;
    }
    echo &#39;<pre class="brush:php;toolbar:false">&#39;;
    print_r($data);
?>
ログイン後にコピー

出力結果:


PHP で SQL クエリ結果を取得するためによく使用される関数 (詳細な例)

上記の例から、mysqli_fetch_assoc() 関数を通じてデータベース内の情報行を正常に取得し、それを連想配列を通じて返しました。また、関数を通じて返されるデータの形式を制御して、インデックス配列、連想配列、またはその両方の組み合わせにすることもできます。この場合は、mysqli_fetch_array() 関数を使用します。

<strong>mysqli_fetch_array()<span style="max-width:90%"></span></strong> 関数

mysqli_fetch_array() 関数結果セットから行を取得し、パラメータに従って連想配列、インデックス配列、またはその両方の形式で返すことができます。その構文形式は次のとおりです:

mysqli_result::fetch_array([int $resulttype = MYSQLI_BOTH])
ログイン後にコピー

This is an object-構文:


mysqli_fetch_array(mysqli_result $result[, int $resulttype = MYSQLI_BOTH])
ログイン後にコピー

次の点に注意してください:

  • ##mysqli_result

    および $result は、mysqli_query() 関数を使用して取得された結果セットとして表されます。

  • $resulttype

    はオプションのパラメータです。戻り値のタイプを設定するために使用される定数です。その値は MYSQLI_ASSOCMYSQLI_NUM または MYSQLI_BOTH は、さまざまなタイプの戻り値を示します。

  • 次に、例を通して mysqli_fetch_array() 関数の使用法を見てみましょう。例は次のとおりです:
<?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 语句,并返回结果
        $data   = mysqli_fetch_array($result, MYSQLI_ASSOC);// 从结果集中获取所有数据
        mysqli_close($link);
    }else{
        echo &#39;数据库连接失败!&#39;;
    }
    echo &#39;<pre class="brush:php;toolbar:false">&#39;;
    print_r($data);
?>
ログイン後にコピー

出力結果:


PHP で SQL クエリ結果を取得するためによく使用される関数 (詳細な例)上記の例では、連想配列の形式でデータを返すことを選択しましたが、mysqli_fetch_array() 関数を通じてさまざまなタイプの戻り値を選択できます。

mysqli_fetch_all() <strong><span style="max-width:90%"></span></strong>関数mysqli_fetch_all() 関数結果セット内のすべてのデータを取得し、パラメーターに従って連想配列、インデックス配列、またはその両方の形式で返すことができます。その構文形式は次のとおりです:

mysqli_result::fetch_all([int $resulttype = MYSQLI_NUM])
ログイン後にコピー

This is object-記述方法:

mysqli_fetch_all(mysqli_result $result [, int $resulttype = MYSQLI_NUM])
ログイン後にコピー

注意すべき点: 構文は mysqli_fetch_array() 関数と同じです

    ##mysqli_resul
  • t および

    $result mysqli_query() 関数を使用して取得された結果セットとして表されます。

  • $resulttype 为可选参数,它是一个常量,用来设定返回值的类型,它的取值可以是 MYSQLI_ASSOCMYSQLI_NUM MYSQLI_BOTH表示返回值的不同类型。

接下来通过示例来看一下mysqli_fetch_all() 函数的使用,示例如下:

<?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 语句
        $data   = $result -> fetch_all(MYSQLI_ASSOC);
        $mysql -> close();
    }
    echo &#39;<pre class="brush:php;toolbar:false">&#39;;
    print_r($data);
?>
ログイン後にコピー

输出结果:

PHP で SQL クエリ結果を取得するためによく使用される関数 (詳細な例)

上述示例中,便是通过mysqli_fetch_all() 函数选择以关联数组的形式返回所有的数据。

大家如果感兴趣的话,可以点击《PHP视频教程》进行更多关于PHP知识的学习。

以上がPHP で SQL クエリ結果を取得するためによく使用される関数 (詳細な例)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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