[nycphp-talk] Many pages: one script

Elliotte Harold elharo at
Sun Aug 5 13:42:41 EDT 2007

I'm considering a simple site that I may design in PHP. PHP is probably 
the simplest solution except for one thing: it carries a very strong 
coupling between pages and scripts. As far as I've ever been able to 
tell PHP really, really, really wants there to be a single primary .php 
file for each URL that does not contain a query string (though that file 
may of course invoke others).

For the system I'm designing that simply won't work. In Java servlet 
environments it's relatively trivial to map one servlet to an entire 
directory structure, so that it handles all requests for all pages 
within that hierarchy.

Is there any *reasonable* way to do this in PHP? The only way I've ever 
seen is what WordPress does: use mod_rewrite to redirect all requests 
within the hierarchy to a custom dispatcher script that converts actual 
hierarchy components into query string variables. I am impressed by this 
hack, but it's way too kludgy for me to be comfortable with. For one 
thing, I don't want to depend on mod_rewrite if I don't have to.

Surely by now there's a better way? How do I overcome the one file per 
URL assumption that PHP makes?

Elliotte Rusty Harold  elharo at
Java I/O 2nd Edition Just Published!

More information about the talk mailing list