| Ошибка
SQL-запрос:
INSERT INTO 'stories'
VALUES ( 4, '<p align=justify>Объектно-ориентированное программирование (ООП) позволяет программисту оперировать с объектами, которые, в свою очередь являются копиями классов, классы, в свою очередь, наследуются другими классами и т.д. Такой подход представления программы очень удобен, ведь каждый элемент в программе представляется объектом с набором свойств и методов.</p><p align=justify>PHP 4-й версии, к сожалению, не позволяет полностью программировать используя ООП подход, Zend анонсирует полную поддержку ООП в PHP5, хотя сейчас уже доступен PHP 5 RC2, нам все же придется ждать выхода официальной версии PHP5, ну а пока разберемся с теми небогатыми возможностями, которые предоставляет PHP4.</p><p align=justify>Итак, в ООП используются классы, одни классы могут наследовать другие, это значит, что все методы, доступные в классе-родителе автоматически становятся доступны в классе-ребенке, это очень удобно, потому что позволяет писать хорошо продуманный код.</p><p align=justify>Разберем построение классов и систему наследования в PHP . Допустим, у нас есть класс Cars и класс Named_Cars, класс Named_Cars наследует класс Cars, т.е. является по отношению к нему ребенком, все функции и переменные из класса Cars доступны в Named_Cars. Наследование осуществляется путем использования зарезервированного слова extends.</p><p align=justify>Чтобы показать доступность переменной класса Cars в классе Named_Cars создадим переменную и выведем ее на экран в классе Named_Cars.</p><p align=justify>В ООП есть два ключевых понятия констуктор и деструктор, функция-конструктор в ООП-языках вызывается тогда, когда объект создается, собственно она и занимается созданием объекта, деструктор — функция противоположная, она вызывается для уничтожения объекта, в PHP роль функции-конструктора выполняет функция, которая имеет такое же название, как и сам класс, в котором функция расположена, роль деструктора PHP берет на себя. Необходимо отметить, что при наследовании классов PHP не вызывает все функции-конструкторы сам, он вызывает только самую первую функцию-констуктор, в примере PHP автоматически вызвал конструктор для класса Named_Cars, а класс Cars нам пришлось конструировать самостоятельно. Конструктор не всегда обязателен, скорее наоборот, используется только в сложных скриптах.</p><p align=justify>Для обращения к функциям внутри класса можно использовать зарезервированную слово $this. Любую функцию класса можно вызвать, используя такой синтаксис имя_класса::функция.</p><p align=justify><? Class Cars { function Cars() { $this->a="переменная класса Cars"; echo("Это констуктор класса Cars!"); } } # Класс наследует класс Cars class Named_Cars extends Cars { function Named_Cars() { # Запускаем констуктор класса-родителя $this->Cars(); echo("Это констуктор класса Named_Cars!"); echo($this->a); } } # Инициируем создание класса Named_Cars $n_cars = new Named_Cars(); ?></p>' ) ;
Ответ MySQL:
#1136 - Column count doesn't match value count at row 1 | |