2012-04-13 152 views
-1

我创建了一个循环来列出一组元值。我已经能够将类应用到列表中的最后一项,但是我想在最后一个值的末尾删除“,”。任何帮助将非常感激。在foreach循环结束时删除“,”

<?php $count = count($subcategory); $num = 0; ?> 
    <?php foreach ($subcategory as $subcategory): ?> 
     <p 
      <?php if($num == $count-1){ ?> 
       class="subcategory-item subcategory-last-item inline-block" 
      <?php } ?> 

      class="inline-block subcategory-item"> <?php echo $subcategory;?>,</p> 
    <?php $num++ ?> 
<?php endforeach; ?> 

我担心在上一个项目中添加一个类时可能会采用不正确的路线。如果我能从最后一项中删除“,”我会很高兴。

+3

'的foreach($子类别为$子目录):'。这是一个递归结构吗?你能否给出一些样本输入和预期输出。 – kba 2012-04-13 02:17:39

+1

您将此标记为jquery,但它正在生成serverside ...您想在哪里得到结果? – Jared 2012-04-13 02:20:00

+0

$ subcategory = get_post_meta($ post-> ID,'subcategory',false); 这就是我生成post_meta的方式。因此($ subcategory as $ subcategory)是我在过去完成这些循环的正确方法。 这是产生的身份,标志,打印,网站,品牌, – GregT 2012-04-13 02:20:33

回答

1

下面就让我们来重写这可能导致你的解决方案:

<?php $count = count($subcategories); $num = 0; ?> 
<?php $classes = 'inline-block subcategory-item'; ?> 
<?php foreach ($subcategories as $subcategory): ?> 
    <p class="<?=$classes.($num==$count-1?' subcategory-last-item':'')?>"> 
     <?php echo $subcategory;?> 
     <?php if ($num<$count-1): ?> 
      , 
     <?php endif; ?> 
    </p> 
    <?php $num++ ?> 
<?php endforeach; ?> 
+1

结果这工作,谢谢。 您在第三行代码末尾缺少“?>”。 我会在网站允许我将其标记为回答。非常感谢你! – GregT 2012-04-13 02:28:24

+0

已修复,谢谢。 – 2012-04-13 02:29:05