This isn't really redirection. What you seem to be describing is a rudimentary page controller - a single point of entry into your website framework which can react to different requests.
The first thing you need to do with this is think about your site folder structure - typically, you'd have a "public" directory and a "library" (or "include") directory on the same level. This means that, as long as you set the DocumentRoot in your apache config to /var/www/yoursite/public - it will be harder for people to get to your PHP code in the "include" directory at /var/www/yoursite/include.
The public directory will then contain your .htaccess and index.php files.
The simplest setup is to then have this in your .htaccess:
RewriteEngine On
RewriteRule ^(.*)$ /index.php?page=$1 [L,QSA]
This captures the URL sent to website, and sets as a value in the PHP $_GET array. The QSA option here means that if your links have a querystring (something like http://www.example.com/module?parameter=value), then this information is also passed on to your script.
I think you will find it tedious (and rapidly unmaintainable) to create a long list of if/else or even a long switch/case block - and ultimately, this one-to-one matching of URLs and files isn't going to be helpful as you might as well have just left the files available in the public directory. Of course, the power of using page controllers (or full Model-View-Controller) is that you don't have to have this one-to-one match: you can pass IDs or even "friendly" URLs which can then be used to extract stored information from a database (like blog posts, etc).
Also - you should be careful in mapping URLs to the include function - what if someone were to request http://www.example.com/database.php ? - this could really start messing up your site and server if you haven't taken suitable precautions.