PHP: <?php function __call( $name, $args ){ try { $this->_aPropertyName( &$name ); } catch( Exception $e ){ return $this->_call( $name, $args ); } ... function _call( $name, $args ){ throw new Exception( 'method not found' ); } надо еще call_ и call__ для симметрии добавить
не, лучше уж Вы к нам. Где заключение с описанием открывающихся горизонтов после введения данной инновации в технологический процесс предприятия?
мда.. говорила мне мама, что умные мальчики бросают пхп при первой же возможности. а я не верил, аргументируя к красоте и выразительности некоторых моментов языка. как оказалось зря. те, кто не уходит, набираются таким количеством спеси, что она вытесняет из головы последние остатки мозгов, оставляя лишь базовый инстинкт копипастить говнокод..
всё, обиделся… Ну как же вам всем не стыдно? Ну-ка все дружно извинились над мальчиком! зы. предлагаю новый раздел, где такое будут только хвалить
написано как то тяжело для понимания... без стеба... я конечно новичек... но всеравно кароче там класс есть в котором данные не просто приводятся к нужному типу но еше и ограничиваются, длинной там или ваапще как надо чтобы было... в первом примере вижу расширение класса там если переменная не задана или не какая нам нужна то обрезается выводится либо текст [untitled] давайте дальше PHP: <? protected $_message; function set_message( $val ){ throw new Exception( 'message is autogenerated property' ); } function get_message( $val ){ if( empty( $val ) ) $val= $this->_message= $this->title . ': ' . $this->count; return $val; } ето что зачем и что делает? Luge это очепятка?) tenshi к слову, тут за неправильное название класса или комментарий - затроллят)
пусть у нас был класс для работы с квадратами: PHP: class Square extends ProtoObject { protected $_size; protected $_area; function set_area( $val ){ $this->size= sqrt( $val ) return $val; } function get_area( $val ){ return pow( $this->size, 2 ); } } но тут нам вдруг внезамно потребовалась поддержка прямоугольников. расширим квадрат: PHP: class Rect extends Square { protected $_size; function set_size( $val ){ $this->width= $this->height= $size; return $val; } function get_size( $val ){ if( $this->width !== $this->height ) throw new Exception( 'rectangle has more than one size' ); return $val; } protected $_width; protected $_height; protected $_area; function get_area( $val ){ return $this->width * $this->height; } } теперь прямоугольник можно использовать везде, где у нас используется квадрат. однако не весь код будет совместим с прямоугольником и несовместимый код будет падать с исключением и требованием сделать ему рефакторинг.
оно не даёт установить значение поля вручную, а при чтении вычисляет его из других полей и кэширует результат.
да я уже пожалел, что зашёл в это сборище троллей. на пхпклабе и то обсуждение более-менее конструктивное.
насчет сборища троллей: как сказать, просто люди не терпимы к ошибкам... это учит думать, искать ответы самостоятельно и писать сразу хорошо...
tenshi да не примеряйте все на себя) идею понял... ps: есть что почитать , шаблонизатор ммм пагинатор?)что нибудь для работы с картинками, еше что то?)
конкретики нет и описалова чем оно лучше существующих решений с геттерами/сеттерами зы. я ж оставил первоначальную тему, расписывали бы там, а не велись на тупой флуд
И заметь, как раз он эту тему не "троллит". А занимается этим школота в лице Kreker и Mr.M.I.T. Что-то не так у вас в дЕтском королевстве