ФорумПрограммированиеPHP для идиотов → доступность метода класса в методах другого класса

доступность метода класса в методах другого класса

  • master

    Сообщения: 3244 Репутация: N Группа: Джедаи

    Spritz 22 июня 2010 г. 4:49, спустя 56 минут 39 секунд

    я когда-то тоже был таким, но бляаааа не до такой же степени
    Спустя 40 сек.
    спартакус правильно написал
    не всё полезно, что в swap полезло
  • master

    Сообщения: 3244 Репутация: N Группа: Джедаи

    Spritz 22 июня 2010 г. 6:09, спустя 1 час 19 минут 39 секунд

    только вместо названия класса в конструкторе (Database) желательно указывать название интерфейса


    interface IDataBase {
    /* список методов */
    }

    class DataBase implements IDataBase {
    // реализация методов
    }

    class ClassName {

    public function __construct (IDataBase $db) {
    $this->db = $db;
    }

    //Тут нам нужно работать с базой данных
    //Вот так здесь работаем. $this->db->query('SELECT * FROM users');
    }

    $db = new DataBase; //$db может быть и дочерним классом DataBase
    $classname = new ClassName ($db); //А вот если передать сюда обьъект другого класа, то вылетит ошибка. Какая хз, не помню

    // в любой момент можем добавить новый класс для работы с бд

    class AnotherDataBase implements IDataBase {
    // реализация методов
    }

    $db2 = new AnotherDataBase;
    $classname2 = new ClassName ($db2);
    не всё полезно, что в swap полезло
  • VaseninM

    Сообщения: 2416 Репутация: N Группа: Адекваты

    Spritz 22 июня 2010 г. 7:52, спустя 1 час 43 минуты

    только вместо названия класса в конструкторе (Database) желательно указывать название интерфейса

    ну да) Тут ты прав, конечо. В данном конкретном случае с базой данных :)
  • adw0rd

    Сообщения: 22959 Репутация: N Группа: в ухо

    Spritz 22 июня 2010 г. 11:21, спустя 3 часа 29 минут 51 секунду


    Вроде в конструктор ненадо передавать ничего(на то он и коструктор)).

    Я если необходимо передаю в конструктор данные для инициализации, ведь на то он и коструктор?))
    https://smappi.org/ - платформа по созданию API на все случаи жизни

Пожалуйста, авторизуйтесь, чтобы написать комментарий!