PHP files do not have to be where apache can "see" them to work Antnee. Indeed, I'm of the opinion they shouldn't be. This is part of my file structure for Gazelle Framework.
My framework adds a single line to Apache's httpd.conf file to include the conf files found in it's httpd directory. Those files do what other PHP frameworks use .htaccess for, establish the mod rewrite rules and set a few PHP settings for the application (turning off magic quotes and register_globals, turning short tags on). It then sets the web directory for each project to the htdocs folder of the project.
Each project only has one php file can be read, and that file does almost nothing. It defines 4 constants, requires the framework core class and starts it.
All the other files of the framework are above the webroot, so there is no URL you can give apache that would result in one of those files being executed out of context. This sidesteps the issue you seem to be trying to solve with your original question.
In practice the framework treats the htdocs directory as a cache and writes files into it. This enables a modular caching system that is out of the scope of this post. But the php code of that schema still requires the landing.php file to enter the rest of the framework.