测试是否在某个页面上使用php?

时间:2011-08-03 18:09:15

标签: php

使用PHP,有没有办法测试浏览器是否正在访问某个页面?

例如,我有一个名为header.php的头文件,它被拉入几个不同的页面。我想要做的是当我去另一个页面时,我想在标题中附加某个变量。

实施例

里面的header.php:

<?php 

$titleA = " Online Instruction";
$title B = "Offline";
?>

<h2>Copyright Info: <?php if ('onlineinstruction'.php) echo $titleA; ?> </h2> 

编辑:如果您认为有更简单的方法可以做到这一点,请告诉我!

5 个答案:

答案 0 :(得分:7)

您可以使用$_SERVER['REQUEST_URI']$_SERVER['PHP_SELF']__FILE__,具体取决于您的PHP版本以及代码设置方式。如果您在框架中,它可能具有更加开发人员友好的功能。例如,CodeIgniter有一个名为current_url()

的函数

每个PHP文档:

  

$ _ SERVER ['REQUEST_URI']:为了访问而给出的URI   这一页;例如,'/ index.html'。

     

$ _ SERVER ['PHP_SELF']:当前正在执行的脚本的文件名,   相对于文档根目录。例如,a中的$ _SERVER ['PHP_SELF']   地址http://example.com/test.php/foo.bar的脚本将是   /test.php/foo.bar。 __ FILE__常量包含完整路径和   当前(即包括)文件的文件名。如果PHP正在运行   命令行处理器此变量包含脚本名称   PHP 4.3.0。以前它不可用。

答案 1 :(得分:3)

<?php

$url = $_SERVER["REQUEST_URI"]; 
$pos = strrpos($url, "hello.php"); 

if($pos != false) {
    echo "found it at " . $pos; 
}


?> 

http://www.php.net/manual/en/reserved.variables.server.php

http://php.net/manual/en/function.strrpos.php

答案 2 :(得分:2)

您可以使用此变量找出您所在的页面:

$_SERVER['PHP_SELF']

http://www.php.net/manual/en/reserved.variables.server.php

答案 3 :(得分:1)

答案 4 :(得分:0)

任何php页面都可以包含以下代码,将适用的页面标题放在变量中。

<?php

//Set Page Title for header template
$page_title = 'Welcome';

require_once("templates/header.php");

?>

在标题模板中:

<title><?php echo $pageTitle ?></title>

任何调出的页面都会在浏览器选项卡中显示您的首选标题,并可用作特定页面上的变量。