Начал изучать классы.Создал простой класс: <?php //определение класса class classname { //задействуем конструктор для установки начальных параметров function _construct($param) { echo "Конструктор вызван с параметром $param <br />"; } } //cоздание экземпляров класса $a = new classname('Первый'); $b = new classname('Второй'); $c = new classname(''); ?> Насколько я понял, должно выводится следующее: Конструктор вызван с параметром Первый Конструктор вызван с параметром Второй Конструктор вызван с параметром Но почему-то ничего не выводится...Почему так может быть?
class classname { //задействуем конструктор для установки начальных параметров public $param; function __construct($param) { $this->param = $param; echo "Конструктор вызван с параметром {$this -> param} <br />"; } } //cоздание экземпляров класса $a = new classname('Первый'); $b = new classname('Второй'); $c = new classname(''); хотя с меня такой советчик по ооп)
То all: Книжка Лары Томсон "Разработка веб-приложений с помощью PHP и MYSQL" Не хотел создавать создавать новую тему.Вот еще один класс: <?php //определение класса class classname { var $attribute; function __get($name) { return $this->$name; } function __set($name, $value) { if( $name ='attribute' && $value >=0 && $value <= 100) $this->$name = $value; } } $a = new classname(); $a->$attribute = 5; echo $a->attribute; ?> Пры попытке вывода выдает ошибку: Notice: Undefined variable: attribute in C:\www\tm\create_class_3.php on line 21 То есть,я так понял, не опознается атрибут.В чем может быть дело?
tommyangelo 3-е издание разве о PHP4?Все-таки 2008 год выпуска.Да и везде PHP5 упоминается.Наверное все-таки о ранних версиях PHP5
чувак, я только добра желаю)))) в 5 версии используются модификаторы доступа(с самых ранних версий) PHP: <?php //определение класса class Myclassname { public $attribute; public function __get($name) { return $this->$name; } public function __set($name, $value) { if( $name ='attribute' && $value >=0 && $value <= 100) $this->$name = $value; } }
tommyangelo Я в курсе,они идут в следующем примере в книге) так что,имхо,все нормально. Ну если так,то можешь посоветовать еще какую-нибудь книгу?[/php]