我的设置(或路径)如下:
|Home
|ftpUsername
|assets
|images.png
|script.php
|mydomain.com
|index.php
index.php 位于 mydomain.com ,其中包含/ home / ftpUsername / assets中的 script.php ,没有任何问题。
script.php 使用 include()函数包含在 index.php 中。
我的问题是,如何让PHP通过 script.php 加载 / home / ftpUsername / assets / 中的图像(png格式)?
换一种说法:
如何在 script.php 中加载 /home/ftpUsername/assets/myimage.png ?
注意:/home/ftpUsername/mydomain.com/是一个实时目录(在线连接到域),而home / ftpUsername / assets /不是(服务器上的本地目录)。
我尝试使用 img src =“/ home / ftpUsername / assets / myimage.png”直接从路径加载它无效,无论是否有反斜杠。
答案 0 :(得分:1)
从script.php,您需要阅读,然后输出PNG图像(传递正确的mimetype,因此它将被识别为图像)。
您可以使用readfile甚至file_get_contents来读取文件流,如下所示:(我假设您将通过$ _GET'image'传递图像名称。/script.php?image=imagename.png
并且使用no_image.png
作为后备。
header("Content-Type:image/png"); //passing the mimetype
$image = '/home/ftpUsername/assets/' . $_GET['image'];
if(is_file($image) || is_file($image = "/home/ftpUsername/assets/no_image.png"))
readfile($image);
这样,您可以直接在img src中链接您的script.png,如下所示:
<img src="script.php?image=imagename.png" alt="" />
你的script.php就像一个图像。