我使用以下一对javascript和php文件来获取目录中所有图像文件的名称。
的Javascript
$(document).on("click", "ul#matchListUL li a", function(event){
event.preventDefault();
var matchLst = $(this).attr('href');
var filenames = new Array();
if (matchLst !== null && matchLst !=="") {
$.ajax({
url : "filenames.php",
dataType : "JSON",
type : "POST",
success:function(data) {
console.log(data);
}
});
}
return false;
})
filename.php
$tardir = "mysite.com/projects/" . $seldir . "/" . $match . "/*.jpg" ;
$files = glob($tardir);
$fileName = array();
for ($i=0; $i<count($files); $i++)
{
$num = $files[$i];
$fileName = basename($num, ".jpg");
}
echo json_encode($fileName);
但是,这只打印一个文件名 - 基本上是文件夹中的最后一个文件。
如何获取所有文件名,可以使用本地存储在本地保存文件名?
答案 0 :(得分:3)
你做错了,你应该这样做:
for ($i=0; $i<count($files); $i++)
{
$num = $files[$i];
// [] will add the value to the array
$fileName[] = basename($num, ".jpg");
}
而不是使用for
循环遍历您的数组,而是使用foreach
循环,如下所示:
foreach($files as $file){
$fileName[] = basename($file, ".jpg");
}