使用javascript或php将文件夹的图像插入到数组中

时间:2017-05-14 07:50:05

标签: javascript php

我想知道是否有可能将一系列图片放入数组中。我想尽可能使用JavaScript,如果没有,可以使用php以及如何实现?

所以我创建了一个名为" images / cars"的地图,其中包含大量图像。所有图片都有不同的名称。一个被称为:"奥迪",另一个被称为:"梅赛德斯"等等。它们都是相同的类型(.gif)。

我可以手动执行此操作:

var pictures = ["audi.gif", "mercedes.gif", "aston martin.gif", ....]
//and so on

但那要做很多工作。当我将新图片上传到"图像"文件夹,我必须手动将新图像添加到数组。

这是我的完整代码:

<!DOCTYPE html>
<html>
  <head>
    <script>
      var cars= ["audi.gif", "mercedes.gif", "aston martin.gif", "bmw.gif", "ferrari.gif"];
      var outputRandomImage = "";   

      function myFunction() {   
        for (var i = cars.length - 1; i >=0; i--) {
          var random = Math.floor(Math.random()*(i+1));
          var randomImage = cars[random];   

          cars[random] = cars[i]; 
          cars[i] = randomImage;
          outputRandomImage += '<img src="images/cars/' + randomImage + '">' + "<br>";
          document.getElementById("output").innerHTML = outputRandomImage;
        }   
      }
    </script>
  </head>
  <body onload="myFunction()">
    <p id="output"></p>
  </body>
</html>

希望有人能提供帮助。我打开任何想法,建议和建议,谢谢。

1 个答案:

答案 0 :(得分:0)

一种方法是创建另一个PHP页面

$folder = "."; // folder with the image files
$scan = scandir($folder);
$files = [];

foreach($scan as $file_name)
{
    if (!is_dir("$folder/$file_name"))
    {
        $array_push($files, $file_name) //  if it is not a directory add it to the files list
    }
}
$json_string = json_encode($ar);
echo $json_string;

对于javascript

$.post("getCars.php", function(data, status){
    if(status==="success"){
        cars = JSON.parse(data)
    }
});