我正在使用这个PHP代码:
if (isset($_GET['c'])) {
$pages = array("home", "upload", "signup");
if (in_array(strtolower($_GET['c']), $pages))
include('pages/'.$_GET['c'].'.php');
else echo "Page not found =(";
}
我应该如何使用此代码将默认页面设为home.php?
答案 0 :(得分:1)
当访问者指定无效页面时,假设您仍然想要“找不到页面”错误,您可以这样做:
if (isset($_GET['c'])) {
if (in_array(strtolower($_GET['c']), $pages))
include('pages/'.$_GET['c'].'.php');
else echo "Page not found =(";
} else {
include('pages/home.php');
}
答案 1 :(得分:1)
这样的事情:
$page = 'home';
if (isset($_GET['c'])) {
$pages = array("home", "upload", "signup");
if (in_array(strtolower($_GET['c']), $pages)) {
$page = strtolower($_GET['c'])
}
}
include('pages/' . $page . '.php');
BTW:通过“默认”,我理解“如果找不到页面,则包括默认页面”
另外:如果您的文件名是小写的,则在包含时应使用小写名称 - 您已经使用小写进行比较,那么为什么不包括?
如果您是在Windows环境中开发,文件名不区分大小写,但是在Linux上 - 如果您在Linux服务器上部署...我会让您猜测会发生什么; - )