ホームページ >バックエンド開発 >PHPチュートリアル >mysqli を使用して MySQL LIKE クエリから複数の結果を効率的に取得するにはどうすればよいですか?

mysqli を使用して MySQL LIKE クエリから複数の結果を効率的に取得するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-13 15:44:13783ブラウズ

How Can I Efficiently Retrieve Multiple Results from a MySQL LIKE Query Using mysqli?

mysqli で LIKE によるクエリと複数の結果の取得

質問に記載されているコードは、LIKE クエリを実行して複数の結果を取得しようとしています。 、問題が発生します。次の手順は、正しいアプローチの概要を示しています。

  1. クエリの準備:

    $param = "%{$_POST['user']}%";
    $stmt = $db->prepare("SELECT id, username FROM users WHERE username LIKE ?");
  2. バインドパラメータ:

    $stmt->bind_param("s", $param);
  3. クエリの実行:

    $stmt->execute();
  4. 配列としての結果:
    からPHP 8.2 以降:

    $result = $stmt->get_result();
    $data = $result->fetch_all(MYSQLI_ASSOC);

    PHP 8.2 より前:

    $result = $stmt->store_result();
    while ($row = $result->fetch_assoc()) {
        $data[] = $row;
    }
  5. または、結果をフェッチします増分的に:

    $stmt->bind_result($id, $username);
    while ($stmt->fetch()) {
        echo "Id: $id, Username: $username";
    }

この改訂されたコードにより、複数の行が返された場合でも、一致する結果がすべて取得されるようになります。回答で提供されている参考文献では、使用されるテクニックについてさらに詳しく説明されています。

以上がmysqli を使用して MySQL LIKE クエリから複数の結果を効率的に取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。