You can do this easily with a page template. WordPress allows you to create page templates that can be assigned to a page through the Page Attributes panel in the page editor. These templates are php files inside your themes directory that start with some code (see this page in Codex for more information):
<?php ?> <?php
Typically, a template is a variation in a regular theme file (for example, page.php) and calls the get_header () and get_footer () functions and has a loop instance. However, if you just want to use a custom PHP page, you just need to create the desired file in the current themes directory and add the above code to the very top of the file.
To display a custom PHP page on your site, you will need to add a new page through the administration area, and then assign a new page template to this page.
Alternatively, if you want to include a custom PHP page in an existing theme file, use the code:
<?php include(TEMPLATEPATH . '/includes/file.php'); ?>
in this case, your custom PHP file will be inside a directory named 'includes' in your current theme directory.
Tim.
source share