PHP当前页面条件判断

页面地址 格式如下

动态地址格式
baidu.com/index.php?main_page=aaa_1
对应的静态地址格式
baidu.com/aaa1.html

动态地址格式
baidu.com/index.php?main_page=abd
对应的静态地址格式
baidu.com/abd.html

动态地址格式
baidu.com/index.php?main_page=xxx_abc
对应的静态地址格式
baidu.com/xxx_abc.html

动态地址格式
baidu.com/index.php?main_page=123
对应的静态地址格式
baidu.com/123.html

baidu.com/index.php?main_page 后面的页面名称没有规律
地址静态化后 显示 为对应名称.html

然后下面 某一前端样式 要求
如果是在当前页面 就输出一个样式类
否则输出另一个样式类

<div class="<?php echo $pageStyle" ;?>.............</div>

求 这个 $pageStyle 实现方法

采纳后继续追满分 请各路好汉不吝赐教 谢谢!

第1个回答  2012-04-18
Apache服务器上有一个模块(非缺省):
mod_rewrite:
URL REWRITE功能之强大足够写上一本书了,哇咔咔
如果,当我需要将news.asp?id=234映射成news/234.html时,只需设置:
RewriteRule /news/(/d+)/.html /news/.asp/?id=$1[N,I], 这样就把/news/234.htm这样的请求映射成了/news?id=234.

看起来变成静态化了,其实是请求的原来的带id=的链接额

总结一句,改apache配置文件 要先启用改模块
在httpd.conf文件里找
LoadModule rewrite_module modules/mod_rewrite.so
去掉前面的#号额

再替换规则:
RewriteRule /news/(/d+)/.html /news/news/.php/?id=$1 [N,I]

当然要根据具体情形修改,你用的不是news额追问

你看懂我的提问了吗
答非所问

第2个回答  2012-04-25
看看下面的是否满足你的要求。
不知道,你的这个当前和非当前?如何区分的? 所以我写了一个根据实际物理名称进行区分。

<?
$pageStyle = "默认样式";

//获取当前URL
$ManUrl = substr($_SERVER["REQUEST_URI"],1);

//正则替换规则
$RuleArray = array();
$RuleArray[] = array("/index.php\?main_page=([a-z]+)_([0-9]+)/i","\${1}\${2}.html");
$RuleArray[] = array("/index.php\?main_page=(\w+)/i","\${1}.html");

//替换
$TempUrl = $ManUrl;
for($i=0;$i<count($RuleArray);$i++)
{
$TempUrl = preg_replace($RuleArray[$i][0],$RuleArray[$i][1],$TempUrl);
}

/*
当前页面

$TempUrl的值是:
aaa1.html

$thisFile 是实际物理文件名称。

例如:
当前访问文件是:


$thisFile的值是:
aaa1.html
*/

//实际物理地址文件名称
$thisFile = substr(__FILE__,strrpos(__FILE__,"\\")+1);

if($TempUrl == $thisFile)
{
$pageStyle = "当前页面样式";
}

?>
第3个回答  2012-04-19
直接赋值,$pageStyle=$_GET['main_page'];追问

能详细指点一下吗? 谢谢

第4个回答  2012-04-18
这么多 。。。。
第5个回答  2012-04-20
$str = "aaa_1";
if( ereg("^[a-z]+_[0-9]+$", $str)){

$arr = explode("_",$str);
$pageStyle = $arr[0].$arr[1].".html";
}elseif(ereg("^[a-z]+_[a-z]+$", $str) || ereg("^[0-9]+$", $str) || ereg("^[a-z]+$", $str) ){
$pageStyle = $str.".html";
}else{
$pageStyle = "其它样式,自己设定";
}

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网