0

したがって、モデルには次のようなものがたくさんあります。

public function can_reply($user)
{
 if($user->banned == 0) return 1;
 return 0;
}

モデルでそれらを使用したい場合は、次のようなものを使用する必要があります。

 $post = new Post;
 if($post->can_reply($user))
 {
  //do something
 }

これを使用できないのはなぜですか?:

   if(Post::can_reply($user))

それはより良く見えます。私は何か間違ったことをしていますか?can_reply、parse_text、is_banned などのメソッドに別のものを使用する必要がありますか?

ありがとう!

4

2 に答える 2

0

必要に応じて静的な方法でメソッドにアクセスできるようにするには、メソッドを静的として定義する必要があります。

public static function can_reply($user)
{
    if ($user->banned == 0) return 1;
    return 0;
}
于 2013-09-23T11:30:32.573 に答える
0

staticモデルでメソッドを作成してみてください。

public static function can_reply($user)
{
 if($user->banned == 0) return 1;
 return 0;
}

今、あなたはそれを次のように使うことができますif(Post::can_reply($user)) { /*do somethig*/ }

于 2013-09-23T11:29:53.773 に答える