Подсмотрел в учебнике пример про полиморфизм, но не суть, в задаче определяют два класса, второй в другом файле. При определении второго класса используется переменная $article, которая нигде не определена. Эти примеры работают я проверял, но только не могу понять откуда мы берем $article, если переменная заранее нигде не определена.
PHP:
скопировать код в буфер обмена
<?PHP class Article { var $id; var $title; var $content; function Article($id, $title, $content) { $this->id = $id; $this->title = $title; $this->content = $content; } // Функция для вывода статьи function view() { echo "<h1>$this->title</h1><p>$this->content</p>"; } } // Теперь определяется другой класс в другом файле <?PHP require_once('ex5.php'); class ArticleList { var $alist; // Здесь определяется массив который хранит набор статей function add(Article $article) // Метод принимает переменную класса Article { $this->alist[] = $article; // Экземпляр класса Article записывает в массив } // Вывод статей function view() { foreach($this->alist as $article) { $article->view(); echo '<hr />'; } } }
(Отредактировано автором: 08 Июля, 2011 - 13:35:22)
|