首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何跨多个目录使用图像和php包含?

如何跨多个目录使用图像和php包含?
EN

Stack Overflow用户
提问于 2012-02-04 04:17:22
回答 1查看 1.3K关注 0票数 2

我是PHP的新手。我想用它在html/jquery站点中包含一个通用的页眉和页脚。目前,我正在使用includes来做这件事:

代码语言:javascript
复制
<?php include('../includes/footer.php'); ?>

这可以很好地工作。我遇到的问题是页眉或页脚中的任何图像。

对我的文件结构的解释:

根文件夹:包含index.php和"includes“、"img”、"php“等文件夹。

php文件夹:包含gallery.php

包含文件夹:包含header.phpfooter.php

在查看index.php时,页眉和页脚中的所有图像都可以正确显示,但因为它们是相对链接的(例如"img/facebook.png"),所以不会在gallery.php中显示。要工作,他们需要一个../包含。但是,这将违背通用报头的目的。

因此,我正在尝试弄清楚如何以与php文件位于何处无关的方式链接包含文件中的图像。我读过this thread (这听起来像是我的问题),但我对答案一无所知。我还读到了一些关于$_SERVER['DOCUMENT_ROOT'] .'/folder/';的文章,它结合了一个回声来显示图像。我用下面的代码在我的footer.php中尝试了一下:

代码语言:javascript
复制
<?php
$path = $_SERVER['DOCUMENT_ROOT'] . '/img/';
$image = ($path . "facebook.png");
echo "<img src=\"$image\" />"; ?>

然而,当我查看页面时,我看到的是一个撕破的小纸质图标,而不是我的图像。我假设这意味着路径是不正确的,但我不知道为什么。facebook.png位于img文件夹中。index.phpgallery.php上都会出现此问题。

在这个相当冗长的解释之后(对不起),我的主要问题是:

1)如何让图片在我的includes中跨多个目录正确显示?

2)如果我以正确的方式使用回声,那么它不工作的可能原因是什么?

再说一次,我对php一无所知,所以如果你能试着让你的答案尽可能的简单,我将不胜感激。

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2012-02-04 04:22:15

img/之前添加一个/,而不是img/facebook.png,如下所示:/img/facebook.png

这就是说“转到根目录,在那里查找img文件夹。然后你的所有图像都应该可以正常工作。图像的路径是绝对的或相对的,这取决于你正在查看的HTML页面,而不是你用来创建它的文件。

尽管"php“文件夹可能没有太多的理由--只要把你所有的页面放在根目录下就行了。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9134940

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档