一个主要的index.php用于多个页面/文件夹

时间:2015-09-07 15:55:39

标签: php html .htaccess

是否可以为整个filetree设置一个index.php?

基本上我的网站上有一个允许文件浏览的文件夹/子页面。 因为我可能想要改变文件浏览器的外观我希望有一个中央的index.php并让另一个index.php加载主要的PHP而不是原始文件的副本。

(目前我必须在每个子文件夹中加入index.php和htaccess文件)

我想要的是:从主文件夹加载php文件的php文件

例如。 /Files/Fileindex/index.php<主要的PHP /files/other/.index.php<应该加载主php的php

我希望我能详细了解你... ...

btw:我是stackoverflow的新手(最终决定开户)

3 个答案:

答案 0 :(得分:0)

我想是的,但它与使用MVC模式有关。现在您有多个入口点,但mvc需要单个入口点和另一个行为。所以如果你想要它,你可能会看看MVC。但是对于你的情况,可能很难将你的应用程序移动到完全另一个应用程序结构,体系结构和逻辑。

答案 1 :(得分:0)

您可以使基本目录中的.htaccess文件包含以下行:ErrorDocument 404 /index.php
当您引用任何不存在的文件时,这会使应用程序引用基本index.php文件 不要将此index.php文件复制到其他文件夹。因此,如果您从子目录引用index.php文件,则会获得基本index.php(因为子目录中没有index.php)
像这样你可以拥有一个全能索引页面。

答案 2 :(得分:0)

您可以使用switch - case计划。请遵循以下示例。

index.php

switch($_GET['pageid']) {

  default:
     include('index1.php');
  break;

  case 'index2':
        include('mainphp/files/other/index.php');
  break;

  case 'index3':
        include('mainphp/files/another/index.php');
  break;

  case 'index4':
        include('mainphp/files/about.php');
  break;

}

<强> index1.php

<ul>
    <li><a href="index.php">Call Main Index</a></li>
    <li><a href="?pageid=index2.php">Call Index2</a></li>
    <li><a href="?pageid=index3.php">Call Index3</a></li>
    <li><a href="?pageid=index4.php">Call Index4</a></li>
</ul>