我有下一个代码:
<?php
$path = 'imgsFor';
$files_array = scandir($path);
for ($x=0; $x<=4; $x++)
{
echo '<img src="imgsFor/$files_array[$x]" <br>';
}
?>
为了显示imgsFor文件夹中的所有图像。
出于某种原因,我看到的只是方框,而不是实际的图像。
原因是什么?
对我来说最好的方法是使用glob
函数:
foreach (glob($path) as $filename) {
echo '<img src="' . $path . '/' . $filename . '"/><br/>';
}
你把一些事情搞砸了。你的正确脚本应该是
<?php
$path = 'imgsFor/';
$files_array = scandir($path);
foreach($files_array as $f) {
if(is_dir($path . $f) === false)
continue;
echo '<img src="' , $path , $f , '"><br>';
}
/* EOF */
原因是您的URL无效。如果你使用单引号,你的变量不会回声。您还忘记结束标签。试试这个:
echo "<img src='http://yourwebsite.com/imgsFor/{$files_array[$x]}'/><br/>";
请检查目录路径并使用is_dir,当文件不存在时,is_dir返回false。你可以试试这个
$path = 'imgsFor';
$scan = scandir($path);
foreach($scan as $file)
{
if (!is_dir($path))
{
echo $file.''n';
}
}