Php 每N次将类添加到foreach循环
我有一个用户列表,每个用户都由一个div包装,这样做Php 每N次将类添加到foreach循环,php,html,Php,Html,我有一个用户列表,每个用户都由一个div包装,这样做 <div class="users"> <div>user 1 content</div> <div>user 2 content</div> <div>user 3 content</div> <div>user 4 content</div>... </div> divs number1
<div class="users">
<div>user 1 content</div>
<div>user 2 content</div>
<div>user 3 content</div>
<div>user 4 content</div>...
</div>
divs number1,4,7,10..应该有一个名为class_left的类,例如,
div编号2,5,8,11,14..应该有一个名为class_center的类
div编号3,6,9,12,15…应该有一个名为class\u right
我不太清楚怎么做。
谢谢。您只需使用带3的
模
运算符即可
下面是一个伪代码:
if(div_number % 3 ==1)
class = class_left;
else if(div_number % 3 == 2)
class = class_center;
else
class=class_right;
您只需使用带3的
模
运算符即可完成此操作
下面是一个伪代码:
if(div_number % 3 ==1)
class = class_left;
else if(div_number % 3 == 2)
class = class_center;
else
class=class_right;
你要找的是:
(i-1)%3 == 0
你要找的是:
(i-1)%3 == 0
试试这个:
$i = 1;
$last = 100;
for ($i =1; $i<$last; $i=+3) {
echo "<div class='class_left'>user ".$i." content</div>";
echo "<div class='class_center'>user ".($i+1)." content</div>";
echo "<div class='class_right'>user ".($i+2)." content</div>";
}
试试这个:
$i = 1;
$last = 100;
for ($i =1; $i<$last; $i=+3) {
echo "<div class='class_left'>user ".$i." content</div>";
echo "<div class='class_center'>user ".($i+1)." content</div>";
echo "<div class='class_right'>user ".($i+2)." content</div>";
}
我不知道你是如何使用代码的,但你可以这样使用模运算符:如果列数模3是1,那么你在左边;如果结果是2,那么你在中间;如果结果等于0,那么你在右边。我不知道你是如何使用代码的,但可以这样使用模运算符:如果列数模3为1,则在左边;如果结果为2,则在中间;如果结果等于0,则在右边。可以这样尝试:
1 2 3
4 5 6
7 8 9
10 11 12
13 14 15
...... and so on
var curr = 0;
users.forEach(user){
curr++;
switch(curr){
case 1:
user.class = 'class_left';
case 2:
user.class = 'class_center';
case 3:
user.class = 'class_right';
curr = 0;
}
}
这只是一个javascript示例。请使用您的语言。也许可以尝试以下方法:
1 2 3
4 5 6
7 8 9
10 11 12
13 14 15
...... and so on
var curr = 0;
users.forEach(user){
curr++;
switch(curr){
case 1:
user.class = 'class_left';
case 2:
user.class = 'class_center';
case 3:
user.class = 'class_right';
curr = 0;
}
}
这只是一个javascript示例。请使用您的语言。假设
$data
是您的数据数组:
<?php $aligns = array('right', 'left', 'center'); ?>
<div class="users">
<?php foreach($data as $key => $value): ?>
<div class="class_<?php echo $aligns[$key % 3]; ?>">
<?php var_dump($value); ?> // User X's Content
</div>
<?php endforeach; ?>
</div>
假设$data
是您的数据数组:
<?php $aligns = array('right', 'left', 'center'); ?>
<div class="users">
<?php foreach($data as $key => $value): ?>
<div class="class_<?php echo $aligns[$key % 3]; ?>">
<?php var_dump($value); ?> // User X's Content
</div>
<?php endforeach; ?>
</div>
此代码适用于每行任意数量的div
元素。(如果将$divsPerRow
设置为2,则不会使用class\u center
。如果将其设置为1,则class\u right
也不会使用)
$divsPerRow=3;
$users=范围(1,$divsPerRow*3);
回显“”。PHP_EOL;
对于($i=0;$i1){
$class=($column==$divsPerRow)?“右”:“中”;
}
回显“用户”。$users[$i]
“内容”。PHP_EOL;
}
回显“”。PHP_EOL;
此代码适用于每行任意数量的div
元素。(如果将$divsPerRow
设置为2,则不会使用class\u center
。如果将其设置为1,则class\u right
也不会使用)
$divsPerRow=3;
$users=范围(1,$divsPerRow*3);
回显“”。PHP_EOL;
对于($i=0;$i1){
$class=($column==$divsPerRow)?“右”:“中”;
}
回显“用户”。$users[$i]
“内容”。PHP_EOL;
}
回显“”。PHP_EOL;
向我们展示您正在使用的代码如果有3个div,您应该只使用%3
,然后查看余数是0
、1
还是2
。向我们展示您正在使用的代码如果有3个div,您应该只使用%3
,并查看余数是0
、1
,或2
。