ホームページ >データベース >mysql チュートリアル >PHP で複数の MySQL 行を配列に効率的に取得するにはどうすればよいですか?
PHP では、MySQL データをフェッチする際に、選択されたレコードを取得するために mysql_fetch_array() を使用することがよくあります。ただし、このメソッドは一度に 1 行しか取得できません。選択したすべての行を配列に集約する必要がある場合には、代替アプローチが存在します。
mysql_fetch_assoc()
mysql_fetch_array() の代替手段の 1 つは、mysql_fetch_assoc() です。この関数は、データの次の行を取得し、列名をキーとした連想配列として返します。ループを使用して、すべての行を反復処理し、配列にデータを設定できます。
<code class="php">$result = mysql_query("SELECT * FROM $tableName"); $rows = array(); while($row = mysql_fetch_assoc($result)){ $rows[] = $row; }</code>
mysqli_fetch_all()
MySQLi 拡張機能よりも MySQLi 拡張機能を好む PHP 開発者向け古い mysql_* 関数である mysqli_fetch_all() は、結果セット内のすべての行を配列として取得する便利な方法を提供します。
<code class="php">$query = "SELECT * FROM table"; $result = mysqli_query($db, $query); $rows = mysqli_fetch_all($result, MYSQLI_ASSOC);</code>
MYSQLI_ASSOC パラメータは、行が連想配列として返されることを指定します。
データを設定すると、$rows 配列には選択したすべてのレコードが含まれ、必要に応じてさらに処理したり、JSON に変換したり、コード内で使用したりできます。
以上がPHP で複数の MySQL 行を配列に効率的に取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。