I'm interested in learning more about design practices in PHP for Database Abstraction & Factory methods. For background, my site is a common-interest social networking community currently in beta mode.
Currently, I've started moving my old code for object retrieval to factory methods. However, I do feel like I'm limiting myself by keeping a lot of SQL table names and structure separated in each function/method.
Questions:
Is there a reason to use PDO (or similar) if I dont anticipate switching databases?
Can PDO interface with the MySqli prepared statements I currently use?
Will it help me separate table names from each method? (If no, what other design patterns might I want to research?)
Will it slow down my site once I have a significantly large member base?