c) Both PDO and MySQLi support "prepared" statements, which could let us introduce a form of statement cache so that if we need to execute the same query multiple times except with different parameters, there is less overhead involved since the statement is already prepared and just needs the data values to use.
That statement cache needs persistent connections, which are somewhat expensive. Otherwise you're doing two roundtrips instead of one, and there's not much performance win anyway.
Another bonus of prepared statements is that it properly escapes everything according to whatever database engine you happen to be using when you substitute in parameters.
I don't think that has been an issue lately.
Domas