douguai4653 2013-09-29 10:39
浏览 37
已采纳

PHP绝对和相对路径

I have this directory structure:

/style/style.php
/style/graphics/logo.png
/cp-admin/index.php

style.php contains the following function, which echoes the logo:

function logo(){
    echo "<p><img class = 'logo' src = 'style/graphics/logo.png'></p>";
}

I am using this function so that if I change the path of the logo, or need to include something else along with it, all it takes is to modify the function, and changes are reflected in all pages.

However, when I am including from /cp-admin/index.php, the path above is taken relatively to index.php, instead of the original function's path.

I want the function to have a path which is referenced-to from the function itself, rather than from all the pages where it's included.

Thanks in advance :)

  • 写回答

1条回答 默认 最新

  • dongqu9917 2013-09-29 10:51
    关注

    When you want to navigate in your folder, you can use

    / which is the root and after make your path since this place (asbolute)

    or use your a relative path, in this case, you go back until the common folder with '..'

    Try in absolute

    echo "<p><img class = 'logo' src = '/style/graphics/logo.png'></p>";
    
                                        ^ from the root
    

    or relative

    echo "<p><img class = 'logo' src = 'graphics/logo.png'></p>";
    
                                        ^ style.php and the folder graphics are in the same parent folder 'style'
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?