2012-09-13 47 views
0

所以我做了一个脚本,以便我可以使用includes来获得我的页眉,页面,然后页脚。如果一个文件不存在404,这一切都有效。现在我的问题是我应该如何获得网页的结束页面。例如,获取页面URL为了使用它包括

我想让它变成这样,当有人转到example.com/home/test时,它会自动包含test.php文件。

道德故事。如何获取页面名称。然后用它来“屏蔽”页面的末尾,这样我就不需要让每个URL都是something.com/home/?p=home

继承我的代码到目前为止。

<?php 
include($_SERVER['DOCUMENT_ROOT'].'/home/lib/php/_dc.php'); 
include($_SERVER['DOCUMENT_ROOT'].'/home/lib/php/_home_fns.php'); 

$script = $_SERVER['SCRIPT_NAME']; //This returns /home/index.php for example =/ 
error_reporting(E_ALL); 
include($_SERVER['DOCUMENT_ROOT'].'/home/default/header.php'); 
if($_GET["p"] == 'home' || !isset($_GET["p"])) { 
    include($_SERVER['DOCUMENT_ROOT'].'/home/pages/home.php'); 
} else if(file_exists($_SERVER['DOCUMENT_ROOT'].'/home/pages/'.$_GET["p"].'.php'))  { 
    include($_SERVER['DOCUMENT_ROOT'].'/home/pages/'.$_GET["p"].'.php');  
} else { 
    include($_SERVER['DOCUMENT_ROOT'].'/home/default/404.php'); 
} 
include($_SERVER['DOCUMENT_ROOT'].'/home/default/footer.php'); 
?> 

回答

1

PHP本身并不是最好的选择,除非你想让你的网站充斥着空的“重定向”PHP文件。我建议您查看Apache服务器的mod_rewrite模块。这里有一个coupleguides让你开始。希望这可以帮助!

0

最简单的方法是在/ home/whatever文件夹中有一个index.php文件。然后使用类似$ _SERVER ['PHP_SELF']的名称,如果要自动执行该名称,或者由于您已经自己编写该文件,则将其硬编码到该文件中。但是看起来很明显,如果你想创建一个更复杂/更严肃的应用程序,你应该看看mod-rewrite。

我也会推荐cakePHP框架,它具有完整的路径到控制器的东西。