Метод класса, но не метод обьекта?

shaliko

Новичок
Метод класса, но не метод обьекта?

Возможно ли в php при создании класса указать какой метотод будет только методом класса?

Проблема в том, что метод статический доступен и у экземпляров класса, а мне бы этого хотелось избежать?!


Вот что я имею ввиду(Код Ruby):

Article.count =>2253
Article.class => Class

a = Article.find:)first , :select => 'id') => #<Article:0xb702de44 @attributes={"id"=>"8"}>
a.count => NoMethodError: undefined method `count'
a.class => Article


После символов "=>" отображаю результат.

Я пишу ORM на php по аналогии с rails ActiveRecord.
 

FractalizeR

Новичок
Причем тут private?

Нет, этого сделать нельзя. Вызов статического метода доступен и на экземпляре.
 

cDLEON

Онанист РНРСlub
__call
Помоему можно использывать для таких целей
 

FractalizeR

Новичок
Проблема в том, что метод статический доступен и у экземпляров класса, а мне бы этого хотелось избежать?!
А зачем этого избегать? Можно ведь просто не вызывать статические методы через экзепляр.
 

Pigmeich

Новичок
Проблема в том, что метод статический доступен и у экземпляров класса, а мне бы этого хотелось избежать?!
мне казалось, что на вызов метода объекта, как статического генерируется предупреждение.
 

FractalizeR

Новичок
Нет, наоборот. Если вы вызываете нестатический метод как статический будет E_STRICT. А если вызываете статический, но на экземпляре - PHP пропускает, как будто так и надо.
 
Сверху