teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

変数

2019/05/11 14:10

投稿

mpyw
mpyw

スコア5223

answer CHANGED
@@ -2,11 +2,11 @@
2
2
 
3
3
  #### 1行目
4
4
 
5
- データベースに関する一連の処理を担う `PDO` オブジェクトを作成する。`PDO` オブジェクトはコンストラクター (`__construct()`)で第1引数~第3引数を使って接続のための情報を受取る。`PDO` オブジェクトは作成されると同時に、引数で渡された情報を使って実際にデータベースへ接続する。
5
+ データベースに関する一連の処理を担う `PDO` オブジェクトを作成する。`PDO` オブジェクトはコンストラクター (`__construct()`)で第1引数~第3引数を使って接続のための情報を受取る。`PDO` オブジェクトは作成されると同時に、引数で渡された情報を使って実際にデータベースへ接続する。この `PDO` オブジェクトは、代入演算子 `=` によって変数 `$pdo` に格納される。
6
6
 
7
7
  #### 2行目
8
8
 
9
- `PDO` オブジェクトの `prepare()` メソッドが呼ばれる。`prepare()` メソッドは第1引数にプレースホルダ `?`入りの、SQL文のテンプレートとなるものを受け取る。`PDO` は `prepare()` メソッドを実行すると、`PDOStatement` オブジェクトを返す。 `PDOStatement` オブジェクトは、自分を生み出した親の `PDO` に関する情報とSQL文のテンプレート情報を内部的に所持している。
9
+ `PDO` オブジェクトの `prepare()` メソッドが呼ばれる。`prepare()` メソッドは第1引数にプレースホルダ `?`入りの、SQL文のテンプレートとなるものを受け取る。`PDO` は `prepare()` メソッドを実行すると、`PDOStatement` オブジェクトを返す。 `PDOStatement` オブジェクトは、自分を生み出した親の `PDO` に関する情報とSQL文のテンプレート情報を内部的に所持している。この `PDOStatement` オブジェクトは、代入演算子 `=` によって変数 `$sql` に格納される。
10
10
 
11
11
  #### 3行目
12
12
 
@@ -14,8 +14,10 @@
14
14
 
15
15
  #### 4行目
16
16
 
17
- `PDOStatement` オブジェクトは `Traversable` インタフェースを実装しているため、`foreach` で回したときに通常のオブジェクトとは異なる特別な振る舞いをさせることができる。`PDOStatement` オブジェクトに関しては、結果を1行ずつ配列形式で取り出す動きをするようになっている。ちなみにこれは以下の記述全く同じ意味である。
17
+ `PDOStatement` オブジェクトは `Traversable` インタフェースを実装しているため、`foreach` で回したときに通常のオブジェクトとは異なる特別な振る舞いをさせることができる。`PDOStatement` オブジェクトに関しては、結果を1行ずつ配列形式で取り出す動きをするようになっている。取り出さる配列1つ1つ、1ループごに変数 `$row` に格納される。
18
18
 
19
+ ちなみにこれは以下の記述と全く同じ意味である。
20
+
19
21
  ```
20
22
  while (($row = $sql->fetch()) !== false) {
21
23