2013-11-24 148 views
0

我已經寫了一些代碼,包括「home.php」如果URL中包含「的index.php」:如果URL中包含「富」查找幷包括一個匹配的PHP包括

<?php if($_GET['page'] != "index.php") { 
include('_includes/home.php'); } ?> 

這工作正常一個特定的頁面(在這個例子中是主頁),但我想擴展我的網站上的任何頁面的邏輯。例如,如果URL包含'foo2.php',我想讓PHP搜索幷包含'_includes/foo2.php'。

我是新來的PHP,所以任何幫助將不勝感激。

+0

唐'使用條件包括,必須有一個更好的方式做任何你想在這裏做... –

+0

哪些錯誤有條件的夾雜物? – Dan382

+0

難以調試,變量可能會被覆蓋......這是一個不好的做法 –

回答

1

如果網址是:

http://example.com/?page=foo2

if (empty($_GET['page'])){ 
    include ("_includes/index.php"); 
    exit; 
} 
$Page_Search = glob("_includes/*.php"); 

if (in_array($_GET['page'],$Page_Search)){ 
include ("_includes/$page.'.php'); 
exit; 
} 

這可能是有用的。

+0

感謝bud,但如果示例是'http://example.com/foo2.php',該怎麼辦? – Dan382

+0

@ Dan382然後在默認情況下瀏覽器會嘗試加載foo2.php,也許你應該查看一些MVC(Model,View,Controller)框架,或者使用.htaccess通過index.php(與MVC使用的方法相同) –

+0

謝謝Daryl我會研究MVC,而不是我以前偶然發現的東西。 – Dan382

0

如何:

if(isset($_GET['page'])) include "_includes/{$_GET['page']}.php";