Php 李找不到图像

Php 李找不到图像,php,html,Php,Html,我有一个带有li的ul,在这里的代码中找不到与列表项“li”关联的.PNG图像: $pngFilename= 'C:/xampp/htdocs/myProj/' . 'just_a.png'; echo 'pngFilename is "', $pngFilename, '" -- that was the .png image filename.'; // within a 'ul' is this li item that displays an image (the ul code i

我有一个带有li的ul,在这里的代码中找不到与列表项“li”关联的.PNG图像:

$pngFilename= 'C:/xampp/htdocs/myProj/' . 'just_a.png';
echo 'pngFilename is "', $pngFilename, '" -- that was the .png image filename.';


// within a 'ul' is this li item that displays an image (the ul code is simplified 
// to only show the item that (needs to but doesn't!) display a .PNG image.)
echo '<ul>';
echo '<li>';
echo '<a href="http://localhost/myProj/just_an.htm">';
echo '<img src="', $pngFilename, '"';            
echo 'alt="http://localhost/myProj/the_other.png"';

// NOTE -- I left out the close /> to the img statement when I copied my code here but 
// it was in fact in my source code.
echo '/>'; 

echo '</a>';
echo '</li>';
echo '</ul>';
唯一需要提及的是'alt'链接,'alt='http://localhost/myProj/the_other.png“--此链接(不是图像)显示为带蓝色下划线的链接文本


为什么这在我的html中起作用,但在php中使用“echo”时会中断?毕竟,“echo”只是将html发送到客户端,而该.png文件100%肯定在那里,当我在php的“echo”命令之外运行上述html时,它显示得很好。

您应该尝试关闭img标记:

echo '<img src="', $pngFilename, '"';
echo 'alt="http://localhost/myProj/the_other.png">';
echo';

您应该尝试关闭img标签:

echo '<img src="', $pngFilename, '"';
echo 'alt="http://localhost/myProj/the_other.png">';
echo';

您正在生成一个图像标记,如:

<img src="C:/xampp/htdocs/myProj/just_a.png" alt="http://localhost/myProj/the_other.png" />


您不能使用此路径,需要将其更改为
http://localhost/myProj/just_a.png
或类似的
file:///C:/xampp/htdocs/myProj/just_a.png

您正在生成一个图像标记,如:

<img src="C:/xampp/htdocs/myProj/just_a.png" alt="http://localhost/myProj/the_other.png" />


您不能使用此路径,需要将其更改为
http://localhost/myProj/just_a.png
或类似的
file:///C:/xampp/htdocs/myProj/just_a.png

这是因为图像的路径根据您查看页面的方式而变化。在本地上下文或服务器上下文中;由于使用的是绝对路径而不是相对路径,因此系统无法根据图像位置的变化进行调整。与使用调用使用内部文件系统的PHP文件系统函数的PHP函数不同。您要做的是让它向浏览器发送一个文本文件,在PHP完成之前,该文件不会呈现为HTML代码。因此,它无法访问php文件系统来解析服务器上图像的路径。修复它的方法是使用相对于PHP脚本的图像路径,或者使用图像的web可访问路径

$pngFilename= 'C:/xampp/htdocs/myProj/' . 'just_a.png';
例如,应该是

$pngFilename= 'http://localhost/myProj/' . 'just_a.png';
或者,如果图像和php文件在同一个目录中,您可以这样做

$pngFilename= 'just_a.png';

这是因为图像的路径根据您查看页面的方式而变化。在本地上下文或服务器上下文中;由于使用的是绝对路径而不是相对路径,因此系统无法根据图像位置的变化进行调整。与使用调用使用内部文件系统的PHP文件系统函数的PHP函数不同。您要做的是让它向浏览器发送一个文本文件,在PHP完成之前,该文件不会呈现为HTML代码。因此,它无法访问php文件系统来解析服务器上图像的路径。修复它的方法是使用相对于PHP脚本的图像路径,或者使用图像的web可访问路径

$pngFilename= 'C:/xampp/htdocs/myProj/' . 'just_a.png';
例如,应该是

$pngFilename= 'http://localhost/myProj/' . 'just_a.png';
或者,如果图像和php文件在同一个目录中,您可以这样做

$pngFilename= 'just_a.png';

我在帖子中漏掉了结尾/>,但它在我的代码中。我还尝试将li列表项简化为
  • ;得到了同样的非结果——没有图像。我在帖子中漏掉了结尾/>,但它在我的代码中。我还尝试将li列表项简化为
  • ;Paulo你是对的,我很想接受user833567的回答,因为他解释了我的代码失败的原因。我还注意到你现在327岁,而他只有55岁。顺便说一句,我向上射了你们两个。所以我应该掷硬币什么的。嘿,乔尔·斯波斯基,你能修好这个吗。我希望能够接受这两个答案——保罗因为他是第一个,833567因为他详细解释了为什么我的代码不起作用。我要去塔可钟,等我回来我会抛硬币。乔尔:这次塔可钟之旅是为了纪念你Paulo你是对的,我很想接受user833567的回答,因为他解释了我的代码失败的原因。我还注意到你现在327岁,而他只有55岁。顺便说一句,我向上射了你们两个。所以我应该掷硬币什么的。嘿,乔尔·斯波斯基,你能修好这个吗。我希望能够接受这两个答案——保罗因为他是第一个,833567因为他详细解释了为什么我的代码不起作用。我要去塔可钟,等我回来我会抛硬币。乔尔:这次塔可钟之旅是为了纪念你