Php 如何编写基本的if语句以在索引页上包含代码?

Php 如何编写基本的if语句以在索引页上包含代码?,php,if-statement,conditional,Php,If Statement,Conditional,我太习惯于为Wordpress写作了,以至于我不知道如何单独编写一个简单的PHP逻辑语句 对于一个非常基本的项目,我试图在index.php页面上包含一个无序列表。下面是我尝试使用的代码示例: <?php $index = $_SERVER['REQUEST_URI']; if ($index == "/") { ?><ul id="links"> <li><a h

我太习惯于为Wordpress写作了,以至于我不知道如何单独编写一个简单的PHP逻辑语句

对于一个非常基本的项目,我试图在index.php页面上包含一个无序列表。下面是我尝试使用的代码示例:

        <?php 
        $index = $_SERVER['REQUEST_URI'];
        if ($index == "/") {
        ?><ul id="links">
            <li><a href="http://facebook.com" class="facebook">Facebook</a></li>
            <li><a href="example.php">Example</a></li>
            <li><a href="test.php">Test</a></li>
            <li><a href="page.php">Page</a></li>
        </ul>
        <?php } ?>
我知道这需要用于以index.php的实际URI结尾的索引页面,以及没有index.php的空白后缀。如何编写此代码才能正常工作?

您需要使用函数获取实际页面名称,如下所示:

    <?php 
    $page = basename($_SERVER['REQUEST_URI']);
    if ($page == 'index.php' || $page == "/" || $page == '') {
    ?><ul id="links">
        <li><a href="http://facebook.com" class="facebook">Facebook</a></li>
        <li><a href="example.php">Example</a></li>
        <li><a href="test.php">Test</a></li>
        <li><a href="page.php">Page</a></li>
    </ul>
    <?php } ?>
您需要使用函数获取实际的页面名称,如下所示:

    <?php 
    $page = basename($_SERVER['REQUEST_URI']);
    if ($page == 'index.php' || $page == "/" || $page == '') {
    ?><ul id="links">
        <li><a href="http://facebook.com" class="facebook">Facebook</a></li>
        <li><a href="example.php">Example</a></li>
        <li><a href="test.php">Test</a></li>
        <li><a href="page.php">Page</a></li>
    </ul>
    <?php } ?>

但是,如果将脚本名称与下面的斜杠一起使用,则它确实有效

<?php 
    $page = basename($_SERVER['SCRIPT_NAME']);
    if ($page == 'index.php' || $page == "/" || $page == '') 
    { ?> 
    Hi This should show up.
    <?php }?>

嗨,这个应该出现了。

但是,如果将脚本名称与下面的斜杠一起使用,则它确实有效

<?php 
    $page = basename($_SERVER['SCRIPT_NAME']);
    if ($page == 'index.php' || $page == "/" || $page == '') 
    { ?> 
    Hi This should show up.
    <?php }?>

嗨,这个应该出现了。

Nice,当页面以index.php结尾时效果非常好。但是,它似乎不能正确地使用尾部斜杠。我复制并粘贴了你最上面的PHP代码,使引号保持一致,但没有收到尾随斜杠的正确结果。当你var_转储它时,$page等于什么?嘿,马克,我在索引页上的PHP代码的变量声明下面添加了var_转储。它将子目录名称放回尾部斜杠之前(在项目开始运行之前,我在该项目的子目录中)。所以现在我明白了为什么它不显示按钮,但我不知道如何解决这个问题!我想我只需要将“/”替换为“subdirectory”,这应该满足这个答案。除非有更好的PHP函数可以实现这一点。很好,当页面以index.PHP结尾时,效果非常好。但是,它似乎不能正确地使用尾部斜杠。我复制并粘贴了你最上面的PHP代码,使引号保持一致,但没有收到尾随斜杠的正确结果。当你var_转储它时,$page等于什么?嘿,马克,我在索引页上的PHP代码的变量声明下面添加了var_转储。它将子目录名称放回尾部斜杠之前(在项目开始运行之前,我在该项目的子目录中)。所以现在我明白了为什么它不显示按钮,但我不知道如何解决这个问题!我想我只需要将“/”替换为“subdirectory”,这应该满足这个答案。除非有更好的PHP函数来实现这一点。