Вопросы по ООП в PHP

18.76K
.

Fublin, Лего видел?
А советский конструктор из железных пластин и болтов?
Вот ооп это лего, а применять ты его можешь где заблагорассудится

.

ramzes, Тоесь вместо "Привет. я класс а", пишется функция любая, и потом когда надо, и куда нам надо просто вставляется в страницу ?

.
точка невозврата

Fublin, ну у класса возможностей побольше, чем у обычной функции, но принцип такой, да.

.
The Frontend-Warrior
Fublin (29.10.2011/18:47)
ramzes, Тоесь вместо "Привет. я класс а", пишется функция любая, и потом когда надо, и куда нам надо просто вставляется в страницу ?
да, именно так
.
Fublin (29.10.2011/18:04)
А к чему конкретно это можно применить, на примере Джона например ?
Применить что именно? Автозагрузку классов?
Так она уже применина:

Файл /incfiles/core.php, строки с 20 по 31

/*
-----------------------------------------------------------------
Автозагрузка Классов
-----------------------------------------------------------------
*/
spl_autoload_register('autoload');
function autoload($name) {
    global $rootpath;
    $file = $rootpath . 'incfiles/classes/' . $name . '.php';
    if (file_exists($file))
        require_once($file);
}


Кстати, еще один пример в контексте автозагрузки:
В коде, приведённом выше, ф-ция autoload, впринципе и не нужна т.к она используется единожды - в качестве callback-параметра для spl_autoload_register() и здесь можно использовать "анонимную функцию" (замыкание), которая очень полезна в таких случаях.

spl_autoload_register(function($name) {
    global $rootpath;
    $file = $rootpath . 'incfiles/classes/' . $name . '.php';
    if (file_exists($file))
        require_once($file);
});
.

L!MP, core.php это ведь ядро сайта ? Значит туда пишется автозагрузка классов, и путь к папке с классами ?

.

Fublin, Ну в JohnCMS - да.
Но я не стал бы рассматривать принципы ООП, в контексте JohnCMS
Я просто привел тебе пример использования автозагрузки классов.

.

L!MP, Ну мне общие принципы и нужны. Но для примера то, начинающие на этом форуме джон будут использовать

.
точка невозврата

Fublin, ну вот мой пример, я написал класс запросов в базу, добавление, удаление, обновление, вывод. Простую админку короче. Так вот, щас вместо того, чтобы к каждому моду писать запросы, формы, проверки, тонны кода, я вызываю этот класс и пишу всего пару строчек в файл. И админка готова.

.

Fublin, Я понимаю. Но в таком случае это не та тема, т.к на примере Джона нельзя понять ООП.
В Джоне используется лишь несколько классов и все

Всего: 383