如何一次在两个位置使用foreach数据?

时间:2014-05-15 14:52:29

标签: php loops foreach split

我有一个包含一系列数据的foreach循环,但我需要的是将数据显示在两个单独的位置。

基本上这是因为我有:

<div id="maindivofimage">
 <?php foreach($bannerdata as $banner): ?>
    <img src="<?php echo $banner->getImage();?> />
 <?php endforeach; ?>
</div>

<div id="maindivofcontent">
    <h1><?php $banner->getTitle();?> </h1>
    <p><?php $banner->getDescription();?> </p>
</div>

我只希望每个部分都有一个周围的DIV,所以我不能将该部分放在foreach中,否则它会多次显示...

任何帮助都非常感谢!

1 个答案:

答案 0 :(得分:2)

我确信运行相同的循环两次没有任何问题,但是如果你真的想要,你可以运行一次并将html存储到字符串中,然后使用字符串:

<?php 
$imgs='';
$text='';
foreach($bannerdata as $banner){

    $imgs .= '<img src="'.$banner->getImage().'" />';
    $text .= '<h1>'.$banner->getTitle().'</h1>';
    $text .= '<p>'.$banner->getDescription().'</p>';
}; ?>

<div id="maindivofimage">
     <?php echo $imgs;?>
</div>

<div id="maindivofcontent">
    <?php echo $text;?>
</div>