在 PHP 中显示图像时出错
Error when displaying image in PHP
我正在尝试了解 PHP 中的文件系统是如何工作的。我创建了一个小示例来显示文件夹中的图像,但我认为我正在打印内容而不是打印图像。
<?php
$image = "/path/to/image.jpg";
$myfile = fopen($image, "r") or die("Unable to open file!");
$logo = fread($myfile,filesize($image));
echo"<img src=\"$logo\" width=\"100\" height=\"100\"\/>";
?>
我是不是碰巧写错了命令或错过了我需要做的事情?
img src 属性采用一个文件名,并执行自己的过程来读取图像并实际显示它。如果你用文本编辑器打开一个图像文件,你会得到有趣的乱码。你在上面的代码中试图做的是把那些乱码放在 src 中。如果您在浏览器中查看源代码,您可以看到。
如果您想显示您实际上并不需要的图像 php,只要路径在您的 webroot 中,这将只是 <img src="/path/to/image.jpg">
。
您需要提供图像 url
作为 src
而不是它的内容,如下所示:
$log = "http://ideone.com/gfx2/img/spoj.png";
echo "<img src='$log' width='100' height='100'/>";
假设图像与 html 页面位于同一目录中,那么您可以简单地使用:
$log = "spoj.png";
echo "<img src='$log' width='100' height='100'/>";
让我们假设图像位于与 html 页面相同的目录中名为 images
的目录中,那么您可以使用:
$log = "images/spoj.png";
echo "<img src='$log' width='100' height='100'/>";
你的数据不是路径,而是文件的内容,可以,但你必须使用数据URI语法:
$logo = "data:image/jpg;base64,".base64_encode($logo);
echo"<img src=\"$logo\" width=\"100\" height=\"100\"\/>";
在此处查看类似主题:
我正在尝试了解 PHP 中的文件系统是如何工作的。我创建了一个小示例来显示文件夹中的图像,但我认为我正在打印内容而不是打印图像。
<?php
$image = "/path/to/image.jpg";
$myfile = fopen($image, "r") or die("Unable to open file!");
$logo = fread($myfile,filesize($image));
echo"<img src=\"$logo\" width=\"100\" height=\"100\"\/>";
?>
我是不是碰巧写错了命令或错过了我需要做的事情?
img src 属性采用一个文件名,并执行自己的过程来读取图像并实际显示它。如果你用文本编辑器打开一个图像文件,你会得到有趣的乱码。你在上面的代码中试图做的是把那些乱码放在 src 中。如果您在浏览器中查看源代码,您可以看到。
如果您想显示您实际上并不需要的图像 php,只要路径在您的 webroot 中,这将只是 <img src="/path/to/image.jpg">
。
您需要提供图像 url
作为 src
而不是它的内容,如下所示:
$log = "http://ideone.com/gfx2/img/spoj.png";
echo "<img src='$log' width='100' height='100'/>";
假设图像与 html 页面位于同一目录中,那么您可以简单地使用:
$log = "spoj.png";
echo "<img src='$log' width='100' height='100'/>";
让我们假设图像位于与 html 页面相同的目录中名为 images
的目录中,那么您可以使用:
$log = "images/spoj.png";
echo "<img src='$log' width='100' height='100'/>";
你的数据不是路径,而是文件的内容,可以,但你必须使用数据URI语法:
$logo = "data:image/jpg;base64,".base64_encode($logo);
echo"<img src=\"$logo\" width=\"100\" height=\"100\"\/>";
在此处查看类似主题: