如何从php中的多维数组中读取图像名称

时间:2015-04-30 12:48:41

标签: php arrays multidimensional-array

我有多维数组,在多维数组中我得到的图像/横幅名称包含单个图像和带有逗号分隔的图像。

现在我想在silder中显示所有的图像/ baneer,所以使用这个多维数组,如何使用循环?

Array
(
    [0] => Array
        (
            [banners] => http://www.eclipse-pos.com/eclipse/images/small_banner2.jpg
        )

    [1] => Array
        (
            [banners] => 143038313801.jpg,143038313809.jpg,143038313811.jpg
        )

    [2] => Array
        (
            [banners] => 143038306301.jpg,143038306302.jpg,143038306303.jpeg,143038306310.jpg,143038306311.jpg,143038306312.png
        )

)

我想在滑块中使用所有波纹管图像名称。

http://www.eclipse-pos.com/eclipse/images/small_banner2.jpg
143038313801.jpg
143038313809.jpg
143038313811.jpg
143038306301.jpg
143038306302.jpg
143038306303.jpeg
143038306310.jpg
143038306311.jpg
143038306312.png

有什么想法吗?

我从未这样做过,所以我不知道如何做到这一点,所以需要你的支持。

What I have done:

for($i=0; $i<count($getBefamousHomepage); $i++){
    echo $getBefamousHomepage[$i]['banners'];
    echo "<br>";
}

感谢。

4 个答案:

答案 0 :(得分:3)

这应该适合你:

只需使用array_walk_recursive()查看数组,然后用逗号简单地explode()所有值并打印implode()'ed,如下所示:

if(!document.getElementById("txtDataReferencia1Hidden") || !document.getElementById("txtDataReferencia2Hidden") || !document.getElementById("ddlDataPub") || !document.getElementById("txtDataRefInfo")) return;

答案 1 :(得分:2)

这适用于您的示例:

for ($i=0; $i<count($getBefamousHomepage); $i++) {
    foreach (explode(',',$getBefamousHomepage[$i]['banners']) as $banner) {
        echo $banner;
        echo "<br />";
    }
}

答案 2 :(得分:0)

<?php

$given_multi_array; // Store your result into this array
$image_names = array(); // To store image names.

//循环给定数组$ given_multi_array并存储到$ image_names

foreach($given_multi_array as $key => $val)
{
foreach($val as $key1 => $image_name)
{
 $image_names =  $image_name;
}
}
 print_r($image_names);
?>

答案 3 :(得分:0)

当您不处理可变深度数据时,递归是不合适的。在这种情况下,您确切地知道您正在使用多少深度。实际上,您知道您特别希望定位单列数据。 PHP有一个专门的函数来调用它:array_column()

这是一个干净,直接的基于函数的过程,没有不必要的开销:

  1. 隔离柱状数据。
  2. 使用元素(逗号)中使用的相同分隔符连接所有元素。
  3. 将所有逗号替换为<br>标记。
  4. 代码:(Demo

    $array = [
        ['banners' => 'http://www.eclipse-pos.com/eclipse/images/small_banner2.jpg'],
        ['banners' => '143038313801.jpg,143038313809.jpg,143038313811.jpg'],
        ['banners' => '143038306301.jpg,143038306302.jpg,143038306303.jpeg,143038306310.jpg,143038306311.jpg,143038306312.png']
    ];
    
    echo str_replace(",", "<br>", implode(",", array_column($array, 'banners')));
    

    输出:

    http://www.eclipse-pos.com/eclipse/images/small_banner2.jpg
    143038313801.jpg
    143038313809.jpg
    143038313811.jpg
    143038306301.jpg
    143038306302.jpg
    143038306303.jpeg
    143038306310.jpg
    143038306311.jpg
    143038306312.png