現在の位置: ホーム> 最新記事一覧> MySQLI_RESULT :: FETCH_ROW関数を使用して単一の列データを取得した後、データを効果的に処理および適用する方法は?

MySQLI_RESULT :: FETCH_ROW関数を使用して単一の列データを取得した後、データを効果的に処理および適用する方法は?

M66 2025-06-26

1。mysqli_result :: fetch_row関数の紹介

mysqli_result :: fetch_rowは、結果セットからデータの行を取得するために使用されるmysqli拡張機能のメソッドです。戻り値は、行のデータを含むインデックス配列であり、各要素はクエリ結果のフィールド値に対応します。データの列が取得される場合、通常、単一のデータ要素を含む配列を返します。

サンプルコード:

 <?php
// データベースに接続します
$mysqli = new mysqli("localhost", "username", "password", "database");

// 接続が成功しているかどうかを確認してください
if ($mysqli->connect_error) {
    die("Connection failed: " . $mysqli->connect_error);
}

// クエリを実行します
$result = $mysqli->query("SELECT username FROM users");

// 単一の列データを取得します
$row = $result->fetch_row();
echo $row[0];  // データの最初の列は、クエリの結果を出力します,つまり、ユーザー名
?>

この例では、 $ row [0]はユーザー名列のデータです。 FETCH_ROW関数は、単一の列または単一行のデータが取得される場合に非常に適しています。


2。取得した単一のデータの列をどのように扱うか?

データベースから複数のユーザー名を持つ列を照会して、このデータを処理する方法を尋ねるとしますか?ループしてデータの各行を繰り返したり、さらに動作のために結果を配列に保存したりできます。

2.1すべてのデータを取得し、配列に保存します

クエリの結果が、すべてのユーザー名の取得など、複数のデータの列である場合、 fetch_rowwhileループを使用して、各行の結果を反復繰り返すことができます。

 <?php
// すべてのユーザー名をクエリします
$query = "SELECT username FROM users";
$result = $mysqli->query($query);

// すべてのユーザー名を保存します
$usernames = [];
while ($row = $result->fetch_row()) {
    $usernames[] = $row[0];
}

// すべてのユーザー名を出力します
foreach ($usernames as $username) {
    echo $username . "<br>";
}
?>

2.2配列を使用してデータを処理します

データが配列に抽出されたら、フィルタリング、ソート、重複排除など、さまざまな処理を実行できます。たとえば、特定のキーワードを含むユーザー名をフィルタリングすると、これを実行できます。

 <?php
// フィルターが含まれます"admin"ユーザー名
$filtered_usernames = array_filter($usernames, function($username) {
    return strpos($username, 'admin') !== false;
});

// 输出过滤后ユーザー名
foreach ($filtered_usernames as $username) {
    echo $username . "<br>";
}
?>

array_filter関数を介して、データベースから抽出された単一の列データを簡単に処理できます。


3.フロントエンドにデータを適用する方法は?

Webページのフロントエンドに抽出されたデータを表示したり、URLを介してフロントエンドに渡す必要がある場合があります。このデータをHTMLページの<code>タグに渡す必要があると仮定すると、このデータをHTMLに埋め込む方法の例を次に示します。

3.1 HTMLに埋め込まれたデータ

<?php
// ユーザーリストを出力します HTML
echo "<ul>";
foreach ($usernames as $username) {
    echo "<li><code>m66.net/{$username}</code></li>";
}
echo "</ul>";
?>

ここでは、変更されたURLを含む各<li>タグに<code>タグを埋め込みました。このようにして、フロントエンドページにデータベースにデータを動的に表示できます。

3.2 URLを生成し、 <code>タグに表示します

データをURLと組み合わせて使用​​する必要がある場合は、これらのURLを<code>タグで直接生成できます。例えば:

 <?php
// ユーザーごとに個人用ホームページリンクを出力します
foreach ($usernames as $username) {
    echo "<p>ユーザーの個人用ホームページ: <code>https://m66.net/{$username}</code></p>";
}
?>

この例では、各ユーザーの個人用ホームページは、 M66.NETをドメイン名として完全なURLを動的に生成し、 <code>タグを介して形式と表示します。


4。注意すべきこと

  • エラー処理: fetch_rowを使用する場合、クエリの結果が空の場合、またはエラーが発生した場合、返品値はnullになります。 FETCH_ROWの返品値をチェックすることにより、有効なデータが処理されることを確認できます。

 $row = $result->fetch_row();
if ($row) {
    // データの処理
    echo $row[0];
} else {
    // データのない状況を処理します
    echo "データは見つかりません";
}
  • パフォーマンスの最適化:データの量が非常に多い場合は、ページングクエリを使用するか、クエリによって返される行の数を制限して、一度にデータの過剰なロードによりメモリの過度の使用を回避することをお勧めします。


この記事を通じて、 MySqli_Result :: FETCH_ROWを使用して単一の列データを取得および処理する方法を理解し、このデータを実際のフロントエンドページに適用する方法を学ぶことができるはずです。これらの例が、データベースの操作とデータプレゼンテーションをより適切に実行できるようにすることを願っています。