循环前的Php foreach限制

时间:2012-07-18 01:15:56

标签: php arrays foreach

我得到了一系列新闻项参数,我循环播放并获得结果

有没有办法在我做foreach之前为特定项目循环数组,

我想仅使用在foreach

之前获取的特定类别来发布帖子
$get_cats  = $k2tools_params->get('cloud_category'); 

返回允许类别数组

比我有

       <?php foreach($this->items as $key=> $item): >
          <?php if (in_array($item->category->id,$get_cats)){ ?> 
              // do something 
          <?php} ?>

        <?php endforeach ?>
<?php echo $this->pagination->getPagesLinks(); ?>

这很好但我遇到的问题是来自$this->items

的18个项目的分页

我有3页的结果,但在foreach中我的类别限制我只有2个项目,这导致额外的2个空页面。

所以我必须将类别限制为foreach,或首先循环低级$this->items

thnx对于任何帮助,我希望你理解。

不介意将HTML与php分开的php标签这是joomla模板

我想要做的是foreach,其中category id在数组中,

2 个答案:

答案 0 :(得分:2)

为了适当地使用分页,您必须找到一些方法来修改原始SQL查询。

答案 1 :(得分:0)

foreach(array_keys($items, $get_cats)) {
    // do_something
}

或尝试使用array_search