mysql_queryからmysql_fetch_array()にすべての行を追加するにはどうしたらいいですか?かなりの数の行で作業できるので、できるだけ効率的にやりたいと思っています。mysql_fetch_arrayすべての行を追加しますか?
3
A
答えて
15
最も一般的な方法:
$rows = array();
while(($row = mysql_fetch_array($result))) {
$rows[] = $row;
}
+3
私は自分自身でこの答えを書くことができませんでした。 – thirtydot
+0
標準的な方法がありますか?さて、私は知っている、感謝フェリックス! –
+0
@thirtydot:Sry;)あなたがそれを書いたければ、私は私を削除します... –
10
<?php
$db = new mysqli("localhost", "foo_dbo", "pass", "foo_db", 3306);
$startTime = microtime(true);
$result = $db->query("select * from users");
$users = $result->fetch_all(MYSQLI_ASSOC); // faster
// while($row = $result->fetch_assoc()) $users[] = $row; //slower
echo sprintf("%d users fetched in %s secs",
count($users), number_format(microtime(true) - $startTime, 6, ".", ""));
$db->close();
?>
EDITいくつかの実行時の統計
$users = $result->fetch_all()
1000 users fetched in 0.001462 secs
5000 users fetched in 0.005493 secs
15000 users fetched in 0.015517 secs
50000 users fetched in 0.051950 secs
100000 users fetched in 0.103647 secs
対
while($row = $result->fetch_assoc()) $users[] = $row;
1000 users fetched in 0.001945 secs
5000 users fetched in 0.008101 secs
15000 users fetched in 0.023481 secs
50000 users fetched in 0.081441 secs
100000 users fetched in 0.163282 secs
興味深い:
関連する問題
- 1. すべての行の末尾にコンマを追加します。
- 2. ツリービューのすべての行にインデックスを追加します。
- 3. すべての行に数値を追加します。 SQLクエリ
- 4. Pythonは2つの行列を並べて追加します
- 5. Railsの特定の列にすべての行を追加しますか?
- 6. 他のすべての行の値を各行に追加します。 SQL
- 7. パペット:すべてのユーザーのファイルを追加しますか?
- 8. RestKitはすべてのリクエストにカスタムヘッダーを追加しますか?
- 9. すべてのファーストクラスを追加しますか?
- 10. すべてのBotoリクエストに「デフォルト」ヘッダーを追加しますか?
- 11. mysql_fetch_arrayはmysql_fetch_arrayを実行するたびに重複データ
- 12. mysql_fetch_arrayはクエリvarをリセットしますか?
- 13. QStandardItemModelにすべての行を追加できません
- 14. MediaWikiのすべてのページの頭の部分に行を追加します
- 15. ファイル内のすべての行の先頭にテキストを追加します。
- 16. DJANGO:ModelMultipleChoiceFieldに「すべて選択」オプションを追加しますか?
- 17. データグリッド内のすべての行に削除ボタンを追加します。
- 18. Javascript - すべての改行の後にカンマを追加します。
- 19. すべての行をカウントし、CSVの各行の末尾に追加する
- 20. マップのすべての要素を追加して設定しますか?
- 21. 列マクロ内のすべての3行目を追加する
- 22. すべてのx行を自分のデータに追加する
- 23. すべての行の結果を配列に追加する
- 24. arraylistのlistviewのすべてのedittextsデータを追加します
- 25. テーブルのすべてのセクションのヘッダータイトルを追加します
- 26. すべての行を一度に追加する方法
- 27. すべての行にタブを追加するC++ストリームマニピュレータ
- 28. Djangoのクエリーセットにすべての値を追加します
- 29. TortoiseHG:ディレクトリツリーのすべてのファイルを追加します
- 30. .Net内のすべてのスワッガーレスポンスにカスタムヘッダーを追加します。
私はあなたがしたいことを理解していません。あなたの質問を明確にしてください。特定の行の値を合計しますか? –
標準の 'while($ row = mysql_fetch_assoc($ result)){echo $ row ['id']; } '? – thirtydot
いいえ、mysql_query()でネストされた配列を作成してください。 mysql_fetch_array()は1行しか取得できないと思うので、それらをすべて取得する必要があります。 –