PHP:将可变数量的元素推送到关联数组

时间:2012-09-18 12:19:03

标签: php associative-array

我服务器上的文件夹包含可变数量的图像。我正在开发一个PHP脚本,用于检索那里的整个文件列表(文件名列表)并创建一个关联数组,如下所示:

$list = array(1=>"image1.png", 2=>"image2.png", ...);

基本上,列表向量从空开始,当找到新图像时,必须将其名称添加到列表中,并使用递增的索引: i =&gt;“image [i] .png”< / em>的

我如何实现这一目标?或者换句话说,如何将新元素推送到我的数组?

3 个答案:

答案 0 :(得分:2)

我不确定你为什么把它称为关联数组,但是如果你想在数组中添加一些东西,就这样做吧

   $list = array();
   $list[] = "image1.png";
   $list[] = ....;
   $list[] = "imagei.png";

答案 1 :(得分:0)

所以你实际上正在重新实施glob()

$list = glob('/path/to/images/*.png');

如果你真的想自己重新实现

$i = 0;
$list = array();
while (file_exists('/path/to/image' . (++$i) . '.png'))
  $list[$i] = "image$i.png";

答案 2 :(得分:0)

如果您想将新项目推送到数组,请尝试使用:

$list[] = "image" + ( count($list) + 1 ) + ".png";

如果您的商品的索引以1开头,请按照上述说明在名称中添加+1。如果您从0开始,因为它是自然行为,请跳过它并使用如下所述:

 $list[] = "image" + count($list) + ".png";