0

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

/blog/testing-url

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

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;

    ...
  }
4

1 回答 1

1

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

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

我没试过只是一个虽然。让我知道这是否有效

于 2017-12-27T16:50:45.443 回答