penis_19_cm ([info]penis_19_cm) wrote,
@ 2007-03-16 22:36:00
Previous Entry  Add to memories!  Tell a Friend  Next Entry
Господа пэхапешники, подскажите, пожалуйста.

Смотрите. Есть класс. При вызове конструктора можно как-нибудь сделать так, чтобы в случае ошибки класс не создался вообще? Ну, кроме exit() в конструкторе, конечно :)
return из конструктора вообще какой смысл имеет?
Да, это должно работать и в PHP4 и в PHP5.



(Read 12 comments) - (Post a new comment)


[info]zencd
2007-03-16 08:34 pm UTC (link)
Конкретно ничего ответить не могу, но мне интересно, какое значение ты ожидаешь увидеть у переменной $obj в таком вот провальном случае:

$obj = new BadConstruction();

- "NULL"?

(Reply to this) (Thread)


[info]uisky
2007-03-16 08:37 pm UTC (link)
Именно. Типа

$obj = new BadConstruction() or die;

То есть, мне на этапе создания объекта надо бы знать, создался он, или нет, а не выставлять какой-нибудь флаг $error в самом объекте и потом проверять его в каждой функции, простите, члене:

funciton DoSmth(){
  if($this->errror) return false;
  ...
}

(Reply to this) (Parent)(Thread)


[info]zencd
2007-03-16 09:10 pm UTC (link)
PHP4: здесь пишут return вообще никак не влияет на возвращаемое значение - всегда возвращается объект $this:

http://www.php.net/manual/en/language.oop.constructor.php#28588
__________

можно не конструкторами создавать объектами, а функциями - тогда Это обходится; немного некрасиво, но в принципе ничуть не хуже конструкторов

(Reply to this) (Parent)(Thread)


[info]uisky
2007-03-16 09:46 pm UTC (link)
Ясно, спасибо

(Reply to this) (Parent)


(Read 12 comments) - (Post a new comment)

Create an Account
Forgot your login or password?
Login w/ OpenID
English • Español • Deutsch • Русский…