A quick question. Given that you may need to rewrite some queries if you change to a different database system, what are the benefits to using PDO? Isn't it just more stuff to know with little benefit?
PHP: Introduction - Manual
PDO provides a data-access abstraction layer, which means that, regardless of which database you're using, you use the same functions to issue queries and fetch data. PDO does not provide a database abstraction; it doesn't rewrite SQL or emulate missing features. You should use a full-blown abstraction layer if you need that facility.
Over the past decade since I've been interested in programming, I've seen stuff come and go. ATL, MFC, then comes .NET. New things come out then fall by the wayside.
I know people tend to jump on the bandwagon and hype things. mysqli is very simple to use. I don't see how PDO is going to save "hours of development time" when it is nothing more than a "data access abstraction layer".
I've read people hyping the benefits of PDO elsewhere. I cannot figure out why. Accessing a database is only a few lines of code, anyway, which can be reused.
My web host only has PDO drivers for sqlite, sqlite2, mysql installed. No Oracle, no Postgre, and not many of the others.
My impression is that PDO is more hassle than it is worth. Please correct me if I am wrong. There is something to be said for keeping stuff as simple as possible. One thing is that it is more likely to be future-proof.