[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Новости как объекты как сделать?
AquaGen
Так, начал я изучать ООП и сразу вопрос.
Допустим класс News для новостей (ну и для всего остального, это как пример). Ну тоесть там автор, название, текст и прочее.
как сделать так чтобы на страницу допустим выводились новости?
тоесть как я понимаю $news=new News - это одна новость будет
помимо того что я понятия не имею каким образом лучше создать эти все объекты и заполнить их, я еще не понимаю куда сувать метод all() который собственно должен выводить новости
или надо создать класс например content, а там all который выводит новости как-то?

вообщем я хочу сделать так: $abc->all(); и чтобы при этом вывелись новости, что делать? все объекты класса можно вывести?

и как сократить это:
list($this->id...) = sqlselect("SELECT * FROM p_news WHERE id=1");



Спустя 8 минут, 15 секунд (8.06.2011 - 07:12) AquaGen написал(а):
и еще вопрос по абстрактным методам:
чем они лучше?
просто у меня есть абстрактный класс материал и в нем несколько элементов, нужных для классов новости, статьи, файлы (такие как название, автор и прочее), если одну статью получать так:
public function __construct($id) {код для доступа к одной статье}
а новость так
public function __construct($id) {код для доступа к одной новости}
то я не понял зачем нужны абстрактные методы
получается сначала надо писать так:

abstract public function __construct($id) {}
а затем так
public function __construct($id) {код для доступа к одной новости}
получается на одну строчку больше или не так?

ps и не хотят работать абстрактные методы:
Цитата
Fatal error: Class Voted contains 1 abstract method and must therefore be declared abstract or implement the remaining methods (Material::all) in E:\AppServ\www\pirate\modules\function.php on line 77

вот так нет ошибки:
abstract class Material {
abstract public function abstrFunc();
}

а так уже есть:
abstract class Material {
abstract public function abstrFunc();
}
class File extends Material {
public $cat;
}

Спустя 3 часа, 43 минуты, 49 секунд (8.06.2011 - 10:56) AquaGen написал(а):
а как при создании объекта обращаться к его переменной сразу?
типа:
$content->file= (new tpl(comments,$theme_file))->file;

как сделать если объекта нет, чтобы метод его не вызывал ошибку, я не знаю будет объект на странице или нет
Цитата
Fatal error: Call to a member function replace() on a non-object

Спустя 2 часа, 51 минута, 31 секунда (8.06.2011 - 13:48) twin написал(а):
Одно удовольствие читать код. Аватарка у тебя сильно к этому располагает.
Не удивляет, что ни кто не ответил?
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.