PHP 计数器不工作
PHP counter doesn't work
我创建了一个短代码,其中计数器用于对元素进行计数,但是计数器只计数到“1”,为什么?
<?php $counter = "0";?>
<?php foreach($this->group('inhalt') as $i => $fields): ?>
<?php $counter += 1 ;?>
<div class="ce_countup autogrid-id_<?php echo $this->id; ?>_<?php echo $counter;?> autogrid-type_cte <?php if($counter ="1"){ echo "autogrid-first";} ?> <?php if($counter =$gridKlasse){ echo "autogrid-last";} ?> <?php echo $gridKlasse;?> autogrid_mode_auto autogrid block">
<h3 id="ce_id_<?php echo $this->id; ?>_<?php echo $counter;?>"><?php echo $this->field('zahl#'.$i)->value(); ?></h3>
<?php echo $this->field('bezeichnung#'.$i)->value(); ?>
</div>
<?php endforeach; ?>
你的问题就在这里
<?php if($counter ="1"){ echo "autogrid-first";} ?>
这里
<?php if($counter = $gridKlasse){ echo "autogrid-last";} ?>
您总是 re-initializing 将 $counter
变量设为 1,然后对整个表达式进行布尔求值。您应该使用 ==
或 ===
来解决问题。另外,$gridKlasse
应该是一个数字。
试试这个:
<?php $counter = 0;?>
<?php foreach($this->group('inhalt') as $i => $fields): ?>
<?php $counter += 1 ;?>
<div class="ce_countup autogrid-id_<?php echo $this->id; ?>_<?php echo $counter;?> autogrid-type_cte <?php if($counter === 1){ echo "autogrid-first";} ?> <?php if($counter === $gridKlasse){ echo "autogrid-last";} ?> <?php echo $gridKlasse;?> autogrid_mode_auto autogrid block">
<h3 id="ce_id_<?php echo $this->id; ?>_<?php echo $counter;?>"><?php echo $this->field('zahl#'.$i)->value(); ?></h3>
<?php echo $this->field('bezeichnung#'.$i)->value(); ?>
</div>
<?php endforeach; ?>
我创建了一个短代码,其中计数器用于对元素进行计数,但是计数器只计数到“1”,为什么?
<?php $counter = "0";?>
<?php foreach($this->group('inhalt') as $i => $fields): ?>
<?php $counter += 1 ;?>
<div class="ce_countup autogrid-id_<?php echo $this->id; ?>_<?php echo $counter;?> autogrid-type_cte <?php if($counter ="1"){ echo "autogrid-first";} ?> <?php if($counter =$gridKlasse){ echo "autogrid-last";} ?> <?php echo $gridKlasse;?> autogrid_mode_auto autogrid block">
<h3 id="ce_id_<?php echo $this->id; ?>_<?php echo $counter;?>"><?php echo $this->field('zahl#'.$i)->value(); ?></h3>
<?php echo $this->field('bezeichnung#'.$i)->value(); ?>
</div>
<?php endforeach; ?>
你的问题就在这里
<?php if($counter ="1"){ echo "autogrid-first";} ?>
这里
<?php if($counter = $gridKlasse){ echo "autogrid-last";} ?>
您总是 re-initializing 将 $counter
变量设为 1,然后对整个表达式进行布尔求值。您应该使用 ==
或 ===
来解决问题。另外,$gridKlasse
应该是一个数字。
试试这个:
<?php $counter = 0;?>
<?php foreach($this->group('inhalt') as $i => $fields): ?>
<?php $counter += 1 ;?>
<div class="ce_countup autogrid-id_<?php echo $this->id; ?>_<?php echo $counter;?> autogrid-type_cte <?php if($counter === 1){ echo "autogrid-first";} ?> <?php if($counter === $gridKlasse){ echo "autogrid-last";} ?> <?php echo $gridKlasse;?> autogrid_mode_auto autogrid block">
<h3 id="ce_id_<?php echo $this->id; ?>_<?php echo $counter;?>"><?php echo $this->field('zahl#'.$i)->value(); ?></h3>
<?php echo $this->field('bezeichnung#'.$i)->value(); ?>
</div>
<?php endforeach; ?>