回答編集履歴

4

見直し

2021/05/25 05:03

投稿

退会済みユーザー
test CHANGED
@@ -31,3 +31,29 @@
31
31
  膨大になるようならやはり1行ずつ取得するスタイルがいいよ。
32
32
 
33
33
  サンプルコードをじっくり読んでね。
34
+
35
+
36
+
37
+ それと、配列に何千件、何万件も溜め込んでから配列の中で処理を回すのって、
38
+
39
+ そんなに速くないから、
40
+
41
+ クエリーの工夫でたとえば、
42
+
43
+
44
+
45
+ - 全体の件数を取得するクエリー。
46
+
47
+ - 必要なオーダーのデータ数に絞り込んで、データを部分的に表示。
48
+
49
+ - ページネーションを実施して、小出しに表示。
50
+
51
+
52
+
53
+ みたいにしたらいい。
54
+
55
+ クエリーの工夫の仕方がわからず、仕方なく配列に全部読み込んで、配列で加工するスタイルは初学者にありがち。
56
+
57
+ 配列に全部のデータを格納してから配列の件数をカウントする、のはナンセンス。
58
+
59
+ まぁ、場合によるけれど。

3

見直し

2021/05/25 05:03

投稿

退会済みユーザー
test CHANGED
@@ -5,6 +5,20 @@
5
5
  サンプルコードを見たほうが理解できるかも。
6
6
 
7
7
  1行分ずつ取得して処理するスタイル。
8
+
9
+ ```php
10
+
11
+ while($row=mysqli_fetch_assoc($result)){
12
+
13
+ // echo $row['id']; などとして結果にアクセス可能
14
+
15
+ $count++;
16
+
17
+ }
18
+
19
+ ```
20
+
21
+ このブロックが終わったときにはすでにクエリー結果の読み出しが終わっちゃっている。
8
22
 
9
23
 
10
24
 

2

見直し

2021/05/25 04:58

投稿

退会済みユーザー
test CHANGED
@@ -4,8 +4,16 @@
4
4
 
5
5
  サンプルコードを見たほうが理解できるかも。
6
6
 
7
+ 1行分ずつ取得して処理するスタイル。
8
+
7
9
 
8
10
 
9
11
  2次元的にまるっと取得したければ、むしろこちら:
10
12
 
11
13
  [mysqli_fetch_all](https://www.php.net/manual/ja/mysqli-result.fetch-all.php)
14
+
15
+ 数行~数十行程度のオーダーならいいけど、
16
+
17
+ 膨大になるようならやはり1行ずつ取得するスタイルがいいよ。
18
+
19
+ サンプルコードをじっくり読んでね。

1

見直し

2021/05/25 04:51

投稿

退会済みユーザー
test CHANGED
@@ -3,3 +3,9 @@
3
3
 
4
4
 
5
5
  サンプルコードを見たほうが理解できるかも。
6
+
7
+
8
+
9
+ 2次元的にまるっと取得したければ、むしろこちら:
10
+
11
+ [mysqli_fetch_all](https://www.php.net/manual/ja/mysqli-result.fetch-all.php)