将PHP数组保存为javascript数组变量

时间:2018-01-30 10:48:10

标签: javascript php arrays

我使用以下一对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);

但是,这只打印一个文件名 - 基本上是文件夹中的最后一个文件。

如何获取所有文件名,可以使用本地存储在本地保存文件名?

1 个答案:

答案 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");
}