2017-12-27 17 views
0

私は次のようにブログ記事のURLを持っている:カテゴリが存在しないかどうかを確認するには?

カテゴリが削除されたカテゴリ&にリンクされた

/blog/testing-url

!私が今欲しいのは、その投稿を見せてくれることです。この投稿のカテゴリは削除されましたが、カテゴリが存在しないかどうかを確認するにはどうすればよいですか?私は以下を試しました

(isset($ category))しかしこれは動作しません。

エラー:

Fatal error: Call to a member function getCategory() on a non-object in /httpdocs/apps/mainv2/modules/blog/actions/actions.class.php on line 168

これは、エラーが起こっているコードの一部です:

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; 

    ... 
    } 
+0

* "if(isset($ category))が動作していません" * - '$ category'がどこに定義されているのかわかりません。 –

+0

@FunkFortyNinerコードが追加されました –

+1

提供されたコードスニペットには$ category変数が表示されず、呼び出されるgetCategoryメソッドも表示されません。あなたはactions.class.phpからコードを引っ張ってもよろしいですか? –

答えて

1

あなたがオブジェクト$vcatCategoryエンティティのインスタンスを持っているかどうかをチェックし、中に何かを行うことができますそのような場合。例:

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

私は試したことがありません。それがうまくいけば、私に知らせてください。

関連する問題