[英]cannot display images from a folder using php
我可以通过使用<img>
标签引用它们来显示单个图像,但是我有很多图像,因此要单独引用每个图像会花费很多精力。
这是我的PHP代码
<?php
$folder_path = 'paintings/'; //image's folder path
$num_files = glob($folder_path . "*.{JPG,jpg,jpeg,gif,png,bmp}", GLOB_BRACE);
$folder = opendir($folder_path);
if($num_files > 0)
{
while(false !== ($file = readdir($folder)))
{
$file_path = $folder_path.$file;
$extension = strtolower(pathinfo($file ,PATHINFO_EXTENSION));
if($extension=='jpg' || $extension =='png' || $extension == 'jpeg'|| $extension == 'gif' || $extension == 'bmp')
{
?>
<a href="<?php echo $file_path; ?>"><img src="<?php echo $file_path; ?>" height="250" /></a>
<?php
}
}
}
else
{
echo "the folder was empty !";
}
closedir($folder);
?>
根据注释,您的代码无法使用,因为出于神秘的原因,您已更改了<>
所有<>
(也许您已经从某些网络源复制了代码?)
顺便说一句,作为记录:使用glob()
检索文件总数,然后使用readdir()
处理每个文件。
您可以直接处理glob()
结果,从而提高代码的性能:
<?php
$folder_path = 'paintings/'; //image's folder path
$files = glob($folder_path . "*.{JPG,jpg,jpeg,gif,png,bmp}", GLOB_BRACE);
if( count( $files ) )
{
foreach( $files as $file_path )
{
?>
<a href="<?php echo $file_path; ?>"><img src="<?php echo $file_path; ?>" height="250" /></a>
<?php
}
}
else
{
echo "the folder was empty !";
}
?>
无需检查扩展名(对于glob()
您只有所需的文件)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.