簡體   English   中英

PHP將多維數組打印到HTML

[英]PHP Printing a Multidimensional Array to HTML

我環顧四周,但不確定是否可以找到特定的答案,因此,如果我錯過了合適的帖子,對不起,請給我鏈接:)

我正在創建一個腳本,以在文件夾中搜索更多文件夾,並將每個文件夾中所有文件的列表編譯成一個多數組。 文件夾名稱將是隨機的,因此我對如何使用foreach循環提取它們有些迷惑。

我對“ [0] =>數組 ”中的第二個數組也感到困惑。 我的腳本中的輸出數據當前如下所示:

    Array
(
    [0] => Array
        (
            [folders] => Array
                (
                    [album 1] => Array
                        (
                            [0] => wallpaper-1089283.jpg
                            [1] => wallpaper-2549931.png
                            [2] => wallpaper-379108.jpg
                            [3] => wallpaper-38130.jpg
                        )

                    [album 2] => Array
                        (
                            [0] => ns75FqFLk1v6jEmecgu25IOk8yB.jpg
                            [1] => wallpaper-1627330.jpg
                            [2] => wallpaper-1629402.jpg
                        )

                    [album 3] => Array
                        (
                            [0] => wallpaper-1042083.jpg
                            [1] => wallpaper-176023.jpg
                            [2] => wallpaper-2624435.jpg
                        )

                )

        )

)

因此,我真的想讓該數據輸出到如下所示的html中。 我真的沒有對多數組做很多工作,我希望我能學到:)

<div>
    <img src="image.jpg"/>
    <img src="image.jpg"/>
    <img src="image.jpg"/>
</div>
<div>
    <img src="image.jpg"/>
    <img src="image.jpg"/>
    <img src="image.jpg"/>
</div>
<div>
    <img src="image.jpg"/>
    <img src="image.jpg"/>
    <img src="image.jpg"/>
</div>
foreach ($array[0]['folders'] as $albumID => $images) {
    ... <div> ...
   foreach($images as $img) {
      .... <img> here ...
   }
   .... </div>
}
foreach($array[0]['folders'] as $albumarray)
{
  echo "<div>";
   foreach(albumarray as $img)
   {
    echo '<img src="'.$img.'"/>'
   }
   echo "</div>";
}

嘗試這個:

foreach($data as $singleFolder) {
  echo '<div>';
   foreach($singleFolder as $img){
     echo "<img src='$img' />";
   }
  echo '</div>'
}
$array = array(
    0 => array(
        'folders' => array(
            'album 1' => array(
                0 => 'wallpaper1.jpg',
                2 => 'wallpaper1.jpg',
                3 => 'wallpaper1.jpg',
            ),
            'album 2' => array(
                0 => 'wallpaper1.jpg',
                2 => 'wallpaper1.jpg',
                3 => 'wallpaper1.jpg',
            ),
            'album 3' => array(
                0 => 'wallpaper1.jpg',
                2 => 'wallpaper1.jpg',
                3 => 'wallpaper1.jpg',
            )
        )
    )
);

$output = '';

foreach ($array[0]['folders'] as $key => $value) {
    $output .= '<div>\n';

    foreach ($value as $file) {
        $output .= '\t<img src="'.$file.'" />\n';
    }

    $output .= '</div>\n';
}

echo $output;

嘗試這樣的事情。

$albums = $array[0]['folders'];
foreach ($album as $img_array)
{
  echo "<div>";
    foreach ($img_array as $img)
    {
       echo "<img src='".$img."'/>";
    }
  echo "</div>";
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM