ハマりにハマる PDOでMySQLを扱っていたのですが、あるSQLがいっこうに受け付けてもらえません。 エラーも出ないのでSQL文が間違っているわけでもなさそうなのですが…。 不具合かなと思い、いろいろ調べているとPDOはデフォルトでエラーを吐かないという衝撃の事実を知りました。 なんだってーーーー!!! PHP.iniの設定でdisplay_Errorをyesにしていたので出力されるものだと思っていました。 セキュリティを考えるとエラーを吐かない方がいいのはわかっているつもりでしたが、設定は別なんですね。 PDOでは属性を設定することで、エラーの挙動や出力を変更することが可能です。 ちょっとした説明 PDOの属性設定はPDO::setAttribute()で行います。エラー以外にもさまざまな属性が存在しています。 属性の設定は「どの属性の設定か」の指定に続き、「その属性の設定」を行います
![PDOはデフォルトではエラー出力をしないです | Unskilled?](https://cdn-ak-scissors.b.st-hatena.com/image/square/e3591dec3b06539bc5280f9adaf021dd29aa4117/height=288;version=1;width=512/https%3A%2F%2Funskilled.site%2Fwp-content%2Fplugins%2Fall-in-one-seo-pack%2Fimages%2Fdefault-user-image.png)