Endforeach循环第一项的不同类

时间:2014-09-07 13:30:25

标签: php html twitter-bootstrap

我不擅长php。我所拥有的是与endforeach循环的项目列表。我想要的是第一个循环将有一个col-lg-12类,而从第二个循环将该类变为col-lg-6。我怎么能做到这一点?

以下是代码:

<?php $firstLoop = true; 
foreach( $network_value as $key => $value ){

if( $firstLoop ){
    echo '<div class="col-lg-12">';
}

    echo '<div class="col-lg-6">';

$firstLoop = false;
} ?> 

^这是我尝试过的代码,但它并不是我想要的。

            <?php if ($img): ?>
            <img src="<?php  echo $thumb->src ?>" width="<?php  echo $thumb->width ?>" height="<?php  echo $thumb->height ?>" alt="" />
        <?php endif; ?>
                <h4>
                    <div class="circle"><?php echo $datePublic = date('d M', strtotime($page->getCollectionDatePublic())); ?></div>
                    <br>
                   <a class="blogTitle" href="<?php echo $url ?>" target="<?php echo $target ?>"><?php echo $title ?></a></h4>
                <h6>Posted by <?php echo $author; ?></h6>
                <br>
                <p><?php echo $description ?></p>
            </div>
        <?php endforeach; ?>

2 个答案:

答案 0 :(得分:1)

最简单的方法是添加一个计数器并检查它是否是计数器中的第一个值。

<?php 
  $counter = 0;
  foreach( $network_value as $key => $value )
  {
    if($counter == 0){
      echo '<div class="col-lg-12">';
    } else {
      echo '<div class="col-lg-6">';
    }
    $counter++;
  } 
?> 

另外我想补充一点,有两种方法可以使用foreach和if语句,但是你试图混合它们,这是错误的。

第一种方法是使用括号&#34; {&#34;和&#34;}&#34;:

foreach($users as $user) {
  // do things for each user
  echo $user->name; // Example of writing out users name
}

if-statement:

if(true) {
  // do something
}

第二种方法是使用&#34; foreach(声明):&#34;和&#34; endforeach;&#34;

foreach($users as $user):
  // do things for each user
  echo $user->name; // Example of writing out users name
endforeach;

if-statement:

if(true):
  // do something
endif;

答案 1 :(得分:0)

<强>编辑: 在您的情况下,您可以使用:

<?php  
foreach ($pages as $key=>$page):
 if($key==0){
 echo '<div class="col-lg-12">'; 
 } if($key==1){
 echo '<div class="col-lg-6">'; 
 } 
endforeach; ?>

或者您可以使用:

<?php  
    foreach ($pages as $key=>$page):
     if($key==0){
     echo '<div class="col-lg-12">'; 
     } else {
     echo '<div class="col-lg-6">'; 
     } 
    endforeach; ?>

<强> OLD:

foreach($array as $key=>$row){
 if($key==0){
  echo '<div class="col-lg-12"></div>';
 }
 if($key==5){
  echo '<div class="col-lg-6"></div>';
 }
// OR try use %
if($key%2 == 0){
  echo '<div class="col-lg-12"></div>';
 } else {
  echo '<div class="col-lg-12"></div>';
}