I’m not sure how I should express this, but I’ll give it a try.
I recently started coding my portfolio in object-oriented PHP and I’m wondering if it’s according to best practices to use a single page where the content changes depending on SQL data and the $_GET variable?
If so/not, why?
Edit: Take a look at my next post, more in-depth details.
Are you asking about using the front controller pattern, where a single file serves all of your requests? Often this is done with an index.php and mod_rewrite getting all of the requests with the rest of the URL being given to it as a parameter in the query string.
http://www.onlamp.com/pub/a/php/2004/07/08/front_controller.html
I would tend to recommend this pattern be used for applications, because it gives you a single place to handle things like authentication, and often you’ll need to integrate things at a tighter level where having new features be classes that are registered with the controller via some mechanism makes a lot of sense.
The concerns about the URLs others have mentioned aren’t really accurate, because there is no real relationship between URL structure and file structure, unless you’re using ancient techniques of building websites. A good chunk of apache functionality is based on the concept that file/directory structure and URL structure are distinct concepts (alias module, rewrite module, content negotiation, so on and so forth)