我陷入了一个简单的事情,就是在php中加载图像。 所有包含的php文件都在一个名为includes的目录中。 Index.php在根文件夹中。 当我从位于根文件夹中的php文件调用img src时,我可以看到图像。 但是当我包含一个应该加载图像的部分时:
<?php include("includes/section.php"); ?>
称之为:
<div class = "right">
<h1> news </h1>
<hr>
echo '<img src="../img/do.png" width="200" alt="Rifrazione news/>';
<p class = "rightp">Blabla </p><br
</div><!--end of right-->
我什么都没得到
答案 0 :(得分:2)
对于我预先使用全局变量的图像。
尝试做类似的事情:
<?
$baseUrl = "http://localhost"; // CHANGE IT TO YOUR URL
?>
<div class = "right">
<h1> news </h1>
<hr>
<?
echo '<img src="'.$baseUrl.'/img/do.png" width="200" alt="Rifrazione news" />';
?>
<p class = "rightp">Blabla </p><br />
</div><!--end of right-->
答案 1 :(得分:1)
您当前所在的文件是您当前的工作目录。因此,请从index.php所在的目录中找到图像的位置,这意味着可能会删除../
。如果您有任何疑问echo getcwd();
。
从不做亚当建议的事情。您应该始终使用文件系统路径,而不是url路径到本地文件。 编辑 推理:热链接是其中的一部分,因为他可能不知道为什么某些东西不起作用,因为它在其他位置工作但主要是由于路由/ .htaccess / url重写。如果他后来继续使用MVC或类似的框架,那么localhost / controller / action将不会返回他的形象,但他可能不确定为什么这是一个他已经习惯的坏习惯。另一个原因是易于使用,如果他提出像./image/here.jpg这样的路径反对localhost * / here.jpg他可能必须通过并重写每个链接,如果他稍后迁移到外部服务器。
帮助更好地可视化的示例: 如果您有以下目录:
my_site/
js/
css/
images/
image.jpg
index.php
bob/
bob.php
contactBob.php
如果您正在查看index.php,则您的图片链接将为/images/image.jpg
。
如果您正在查看contactBob.php,您的图片链接将为../images/image.jpg
。
答案 2 :(得分:0)
答案 3 :(得分:0)
经过搜索和测试......没有那个。 唯一缺少的是括号开头的php标签。
根本不需要变量。 此语法按预期工作。
<?php
echo '<img src="img/do.png" width="120" alt="Rifrazione news"/>';
?>
无论如何,谢谢你跳进来。