如何检查类别是否不存在?

问题描述 投票:0回答:1

我有一个博客文章网址如下:

/博客/测试中的网址

已链接到某个类别且该类别已被删除!我现在想要的是显示帖子。此帖子的类别已被删除,但我如何检查该类别是否不存在?我尝试了以下内容

if(isset($ category))但这不起作用。

错误:

致命错误:在第168行的/httpdocs/apps/mainv2/modules/blog/actions/actions.class.php中的非对象上调用成员函数getCategory()

这是发生错误的一段代码:

  public function executeEdit(sfWebRequest $request) { #edit video
    ...

    $this->nrpag = $request->getParameter('nrpag', 1);
    $cats = array(); #video_cat
    $c = new Criteria();
    $c->addAscendingOrderByColumn(VideoCatPeer::CATEGORY);
    $vcats = VideoCatPeer::doSelect($c);
    foreach ($vcats as $vcat) {
        if($vcat != NULL){
            $cats[$vcat->getId()] = $vcat->getCategory();
        }else{
            continue;
        }
    }
    $this->cats = $cats;

    ...
  }
php symfony symfony1 symfony-1.2
1个回答
1
投票

您可以检查对象$vcat是否具有Category实体的实例,并在这种情况下执行某些操作。例如:

foreach ($vcats as $vcat) {
    if($vcat != NULL && $vcat->getCategory() instanceof Category){
        $cats[$vcat->getId()] = $vcat->getCategory();
    } 
}

我没试过只是一个想法。如果有效,请告诉我

© www.soinside.com 2019 - 2024. All rights reserved.