質問編集履歴
1
文言を修正しました
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
例えば、テーブルに該当する
|
1
|
+
例えば、テーブルに該当するレコードがない場合、以下の$resultの結果をdumpした場合、空の配列を返してくれるわけではなくfalse(boolean)が返されます。こちらのような[記事](http://lovecall.hatenablog.com/entry/2012/04/07/SELECT_%E3%81%97%E3%81%A6%E8%A9%B2%E5%BD%93%E3%81%AA%E3%81%97%E3%81%A0%E3%81%A3%E3%81%9F%E5%A0%B4%E5%90%88%E3%80%81FALSE_%E3%81%8C%E8%BF%94%E3%81%A3%E3%81%A6%E3%81%8F%E3%82%8B%E3%82%8F%E3%81%91)を見てこれがfalseであるか否かの判定をするべきかを少し立ち止まって考えてみました。
|
2
2
|
|
3
3
|
1) 実際にはこのfalse(boolean)と言う結果は、結果が空であれば真偽型のfalseを返すという仕様ではなく、不適切な処理でこのような結果になっているのでしょうか?実際にこの結果のphpやmysqlが意図しているところをご存知であれば教えてください。
|
4
4
|
2) もし「テーブルにが該当する行がない」という本来の意味で結果を得たい場合にはarray(0){}であるべきかとも思うのですが、その場合はfetchAll()が適切なのでしょうか?もしそうであるとすれば1)と関連してなぜfetch()では期待する空の配列を返してくれないのでしょうか?
|