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

回答編集履歴

3

補足

2019/10/08 15:26

投稿

tanat
tanat

スコア18778

answer CHANGED
@@ -13,7 +13,7 @@
13
13
  var_dump($stmt->fetchAll());
14
14
  ```
15
15
 
16
- DB切断前に結果セットとしてのPDOStatement クラスのオブジェクト`$stmt`が取得出来ているので、`var_dump()`は`users`テーブルの中身を表示することが出来ます。
16
+ DB切断前に結果セットとしてのPDOStatement クラスのオブジェクト`$stmt`が取得出来ているので、`var_dump()`は`users`テーブルの中身を表示することが出来ます。(結果セットからfetchするのにDB接続は必要ありません)
17
17
  [PDOStatement クラス](https://www.php.net/manual/ja/class.pdostatement.php)
18
18
 
19
19
  例示のソースコードでは多分HTMLテーブルの中で`$結果セット->fetchAssoc()`で既に取得されていた結果を表示しているのだと思います。

2

追記

2019/10/08 15:26

投稿

tanat
tanat

スコア18778

answer CHANGED
@@ -1,6 +1,27 @@
1
- 質問を誤解していた気がするで修正中
1
+ 例えばこんな感じソースがあった場合
2
2
 
3
+ ```PHP
4
+ <?php
3
5
 
6
+ $dbh = new PDO('mysql:dbname=xxx;host=127.0.0.1', 'root', 'rootpasswd');
7
+ $sql = "select * from users;";
8
+ $stmt = $dbh->query($sql);
9
+
10
+ //DB切断
11
+ $dbh = null;
12
+
13
+ var_dump($stmt->fetchAll());
14
+ ```
15
+
16
+ DB切断前に結果セットとしてのPDOStatement クラスのオブジェクト`$stmt`が取得出来ているので、`var_dump()`は`users`テーブルの中身を表示することが出来ます。
17
+ [PDOStatement クラス](https://www.php.net/manual/ja/class.pdostatement.php)
18
+
19
+ 例示のソースコードでは多分HTMLテーブルの中で`$結果セット->fetchAssoc()`で既に取得されていた結果を表示しているのだと思います。
20
+
21
+
22
+
23
+
24
+
4
25
  以下修正前の回答
5
26
  ---
6
27
 

1

修正

2019/10/08 15:18

投稿

tanat
tanat

スコア18778

answer CHANGED
@@ -1,3 +1,9 @@
1
+ 質問を誤解していた気がするので修正中
2
+
3
+
4
+ 以下修正前の回答
5
+ ---
6
+
1
7
  多分Finallyの挙動について勘違いしているんだと思います。
2
8
 
3
9
  [PHPマニュアル例外(exceptions) ](https://www.php.net/manual/ja/language.exceptions.php)