列出目录中的所有图像未列出内容

问题描述:

我使用以下命令列出目录中的所有jpg图像,由于某些原因,它不工作,但我认为我的一些和.s可能在错误的地方,我想我有点困惑了自己:-S。列出目录中的所有图像未列出内容

<?php 
if ($handle = opendir('images/photobanner')) { 
while (false !== ($file = readdir($handle))) 
{ 
    if ($file != "." && $file != ".." && strtolower(substr($file, strrpos($file, '.') + 1)) == 'jpg') 
    { 
     $thelist .= '<li><a href="'.$file.'">'<img src="'.$file.'.'"/>'</a></li>'; 
    } 
} 
closedir($handle); 
} 
?> 

<P>List of files:</p> 
<UL> 
<P><?=$thelist?></p> 
</UL> 

更改连接行如下。

$thelist .= '<li><a href="'.$file.'"><img src="'.$file.'"/></a></li>'; 

和befor开始循环声明$thelist,它是在范围内都有效

您的变量$thelist仅在您的while循环中已知。

如果你改变你开始这个,它应该工作:

<?php 
$thelist = ""; 
if ($handle = opendir('images/photobanner')) { 

的技术术语,你的问题是“范围”。

+0

谢谢,但我仍然得到一个空白页面 –

也许​​3210是最适合你,和你有一些额外'

$thelist = ''; 
foreach (glob("images/photobanner/*.jpg") as $file) { 
    $thelist .= '<li><a href="'.$file.'"><img src="'.$file.'"/></a></li>'; 
} 
echo $thelist;