通常我会将url参数用于pageswitch,
让我说我有这个开关 所以p是页面
if(isset($_GET['p']){
$page = $_GET['p'];
if(file_exists('includes/' . $page . '.php')){
// include the page
} else {
// include error page
}
} else {
// include homepage
}
我的网址看起来像这样:
http://www.example.com?p=contact
是否可以使用这样的网址开启一个网页开关:
http://www.example.com/contact
在网址末尾提到缺少的.php。
并且有人可以告诉我这个php if else语句是否是包含文件的正确方法?
答案 0 :(得分:0)
是的,可以使用http://www.example.com/contact等页面进行页面切换。
然而,您需要重新编写流量,因此如果您有权访问.htacess文件,则可以添加类似的内容
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^/(.+)/?$ http://www.example.com?p=$1 [NC,L,QSA]
这样用户可以导航到/联系,它将重定向到?p = contact
如果您有很多页面,我建议您使用switch语句检查$ _GET吗?
您案例中的switch语句可能如下所示......
if(isset($_GET['p'])){
$page = $_GET['p'];
switch($page){
case 'contact':
if(file_exists('includes/' . $page . '.php')){
// include the page
} else {
// include error page
}
break;
}
}else{
}
希望这有帮助