Foreach,每个n项的特殊处理(奇数,甚至例如)

Him*_*ors 4 php foreach

我有一个看起来像这样的foreach:

                          foreach ($blogusers as $bloguser) {
                        $args = array(
                        'author' => $bloguser->user_id,
                          'showposts' => 1,
                          'caller_get_posts' => 1
                        );
                        $my_query = new WP_Query($args);
                        if( $my_query->have_posts() ) {
                          $user = get_userdata($bloguser->user_id);
                          userphoto($bloguser->user_id, "<div class='all_authors'><a href='http://blogg.nacka.se/nastasteg/author/".$user->user_login . "'>","</a><ul><li><a href='http://blogg.nacka.se/nastasteg/author/".$user->user_login . "'>" .$user->user_firstname."</a></li><li class='occupation'>".$user->user_lastname."</li></ul></div>", array('width' => 135, 'height' => 135));
                          #echo "<div class='all_authors'><a href='http://blogg.nacka.se/nastasteg/author/".$user->user_login . "'><img src='http://www.gravatar.com/avatar/" . md5( strtolower( trim( " $user->user_email " ) ) )."?s=135' /></a><ul><li><a href='http://blogg.nacka.se/nastasteg/author/".$user->user_login . "'>" .$user->user_firstname."</a></li><li class='occupation'>".$user->user_lastname."</li></ul></div>";
                        }
                      }
Run Code Online (Sandbox Code Playgroud)

在每个foth div中,想添加一个额外的类.我该怎么做呢?

nor*_*ian 13

使用模数运算符.我看到@Alex已经打败了我,但我提供了我编写和测试的代码,以便其他人可以更清楚地看到原理:

$blogusers=array('a','b','c','d','e','f','g','h','i','j');
$i=0;
foreach ($blogusers as $bloguser) {
    if($i % 4 === 0) $extraclass= "fourthClass";
    $resultHTML .= "<div class=\"standardClass $extraclass\">$bloguser</div>";
    $i++;
    $extraclass="";
}
echo $resultHTML;
Run Code Online (Sandbox Code Playgroud)

使用三元算子可以使其更紧凑,但这是原则.


Ale*_*lex 7

在foreach调用$ i之前创建一个变量并将其设置为0;

在你内心使用

$class = ($i%4 === 0) ? 'yourclass' : '';

$class 现在是'yourclass'或空字符串

然后在你的foreach增量结束$i$i++