我正在编写一个脚本,以使用PHP显示特定文件夹中的所有图像。但是,在for循环中进行迭代时,保存图像目标位置(../images/uploads/imageName.png)的字符串正斜杠已删除(因此,在实际的图像标记中,它看起来像:.. images上传imageName。 php)。回显$ num字符串时,文件目标正确显示。我的脚本显示在下面:
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
$files = glob("../images/uploads/*.*");
for ($i = 0; $i < count($files); $i++) {
$num = $files[$i];
echo $num;
echo '<img src"'.$num.'" alt="random image">'." ";
}
任何帮助将不胜感激
答案 0 :(得分:2)
您在这里遗漏了一些东西
echo '<img src"'.$num.'" alt="random image">'." ";
例如=
和值之间的src
echo '<img src="'.$num.'" alt="random image">'." ";
我确信,无论路径是什么,如果没有它,您的图像都不会显示。
正斜杠已删除(因此,在实际的图像标签中,它看起来像:.. images上传imageName.php)。回显$ num字符串时,文件目标正确显示。
您可能会看到的是浏览器在试图找出HTML标签时是如何中断的。由于echoing out the $num string
变量的值正确时是正确的,因此标记已失效。 PHP不仅会神奇地从一行到另一行对变量的值进行处理。
干杯!
答案 1 :(得分:1)
也许可以像这样尝试使用str_replace()
函数:
$num = str_replace(' ', '/', $files[$i]);
这应该用斜杠代替
答案 2 :(得分:1)
如果您的链接末尾没有任何斜杠,则会添加一个斜杠
if(substr($yourlinkvariable, -1) !== "/") {
$yourlinkvariable .= "/";
}