【发布时间】:2015-08-22 03:12:03
【问题描述】:
我在这里的第一个问题... 我正在尝试从“fotorama”div 内的文件夹中动态显示图像。使用此代码:
<?php
$dir = "/example/images/category/";
$images = glob($dir.'*.{JPG,jpg,gif,png,bmp}', GLOB_BRACE);
foreach ($images as $image) {
echo "<img src='".$dir.".".$image."' />";
};?>
我知道以前有人问过这个问题;但在阅读了我发现的所有内容后:例如(here、here 和 here)以及许多其他“类似”问题。 他们都推荐几乎相同的代码(彼此之间的语法略有不同) 我已经尝试了我找到的这段代码的所有变体,但它什么也没显示。
我知道 ($dir) 很好,因为当我尝试时:
echo '<img src="'.$dir."img1.jpg".'">'; 它显示该特定图像。问题一定出在 glob 部分,因为当我在 foreach 循环之前使用 var_dump($images); 时,它会显示:array (0) {}。
不知道是什么问题……
编辑:
在 Sam 的回答的帮助下,代码现在可以工作了,我发现我忘记更正 GLOB_BRACE 部分中的某些内容。更正后的代码应该是这样的:
<?php
$dir = "c:/xampp/htdocs/example/images/category/";
$images = glob($dir.'*.{JPG,jpg,gif,png,bmp}', GLOB_BRACE);
foreach ($images as $image) {
echo "<img src='".$image."' />";
};
?>
为了将来参考 Xampp localhost 上 glob()function 工作的路径是:C:/xampp/htdocs/your-folder-structure
【问题讨论】:
-
具体目录是什么?因为
/example将是文件系统的绝对路径,而不是相对于 docroot 的路径。启用 error_reporting。 -
哦,我忘了说我在 Xampp 上,路径只是 htdocs/example/images/category。我不知道如何启用error_reporting...'我会开始寻找正确的知道。
-
您只需要确保您的路径可以从当前工作目录访问。如果
glob()找不到,则返回一个空数组(无论文件扩展名模式如何)。 -
好吧,那个小代码在“example”文件夹内的“gallery.php”上,我对PHP很陌生,但我认为可以从那里访问路径。 (我也尝试过/images/category/)....我猜error_reporting已启用,(或者我认为)因为在许多尝试中它确实显示了不同的错误。其中许多与 foreach 循环的
echo部分有关。