Tach!
Für einige Situationen (abseits der 08/15-Anwendungsfälle) ist es sogar nicht verwendbar.
Würdest du mir eventuell diese Fälle erläutern, oder hast du eine gute Seite, die das Problem anspricht?
Es gibt einige selten verwendete Funktionalität, die von PDO nicht sinnvoll umgesetzt werden kann, wie mysqli_kill(). Bei Querys kann man sich mit mysqli aussuchen, ob das Resultset automatisch in Gänze zum Client übertragen wird und das Fetchen die Datensätze nur noch aus diesem Puffer holt, oder ob die Datensätze wirklich einzeln gefetcht werden sollen (store_- vs. use_result). Es sind nur Kleinigkeiten, die man üblicherweise nicht benötigt. Mit mysqli ist man näher dram am DBMS, so dass man solche Funktionalität direkt nutzen kann. Andere Features können mit einfachem Funktionsaufruf erledigt werden, mit PDO braucht es dazu ein Statement (Default-Datenbank innerhalb einer bestehenden Verbindung wechseln: mysqli_select_db(...) vs. USE ...).
Man sollte immer alles ordentlich prüfen, denn auch wenn nicht vom Anwender beabsichtigt, können sich ungewollte Fehler einschleichen.
Mit der Formulierung bin ich auch nicht so richtig einverstanden. Prüfen ist nicht immer sinnvoll machbar. Was will man zum Beispiel bei einem Kommentar prüfen? Viel mehr als die Länge ist da nicht drin - generell gesagt. In individuellen Anwendungsfällen mag das anders aussehen. Das ist also für jedes Datum eine Einzelfallentscheidung. Wenn etwas _immer_ gemacht werden sollte, dann ist es das Escaping für den jeweiligen Ausgabekontext. Und das ist keine Prüfung, sondern nur stures Zeichenersetzen (oder ein Typecast).
dedlfix.