在PHP中的foreach循环中的Div标签

时间:2018-05-11 23:01:40

标签: php loops foreach

我想知道在foreach循环中嵌入标记的最佳做法是什么?

我有一个关联数组,其中有一个条目包含以下键:

$portfolio = [
'title' => '',
'technology' => '',
'description' => '',
'link' => '',
];

我想要做的是用里面的特定元素回显div标签,但是每个div标签都会被复制:

<div class="container">
<div class="row">
<div class="col-md-6 col-lg-4"><div class="card">\n<div class="car img 
top"></div>
</div>
</div><div class="col-md-6 col-lg-4"><div class="card"><div class="car 
img top"></div>
</div>
</div><div class="col-md-6 col-lg-4"><div class="card"><div class="car 
img top"></div>
</div>
</div><div class="col-md-6 col-lg-4"><div class="card"><div class="car 
img top"></div>
</div>
</div>  </div><!-- row end -->
</div><!-- container end -->

我的foreach循环是: 我已经评论了一些,因为我正在调试过程中,当页面加载时出现白页,错误在注释掉的代码中,我将修复。

foreach($portfolio as $value){

echo '<div class="col-md-6 col-lg-4">' . '\n';
    echo '<div class="card">' . '\n';
        echo '<div class="car img top">';
            //echo "<img src='img/" . "$value['image']'" . ">";
        //echo "</div>";
        //echo "<div class='card-body'>";
        //  echo "<div class='card-body'>";
            //  echo "<h3 class'card-title'><a class='text-secondary' href='#'>See Project</a></h3>";
            //  echo "<h6 class='card-subtitle mb-2 text-muted'>$value['description']</h6>";

        echo "</div>". "\n";
    echo "</div>" . "\n";   
echo "</div>";
}

任何帮助都会受到赞赏,但我认为我最好的目标是做一个多维数组?

谢谢, 詹姆斯

1 个答案:

答案 0 :(得分:1)

如果您的问题只是格式和易读性问题,请尝试使用此语法。

step = 4

请注意,您的报价上有错误,而您忘记了结束div标记。这种格式使阅读和捕捉错误更容易。

请注意,在我的示例中,我假设您的 * + ***** ***** *** + **** **** ***** + *** *** ******* + ** ** ********* + * * ******* + ** ** ***** + *** *** *** + **** **** * + ***** ***** 变量是一个多维数组:

<?php foreach($portfolio as $value):?>
<div class="col-md-6 col-lg-4">
    <div class="card">
        <div class="car img top">
            <img src="img/<?php echo $value['image'];?>" />
        </div>";
        <div class="card-body">
            <div class="card-body">
                <h3 class='card-title'>
                    <a class='text-secondary' href='<?php echo $value['link']?>'>
                       <?php echo $value['title']?>
                    </a>
                </h3>
                <h6 class='card-subtitle mb-2 text-muted'><?php echo $value['description']?></h6>
            </div>
        </div>  
    </div>
</div>
<?php endforeach;?>