Есть ли эквивалент PHP-списку инициализации для каждого члена? - PullRequest
3 голосов
/ 19 сентября 2010

Я хотел бы начать с небольшого фона, на случай, если у кого-нибудь есть лучшие идеи для дизайна.

Я хочу создать класс базы данных, который подключается к базе данных при создании. Я бы использовал функции для вызова базы данных, чтобы получить то, что я хочу. Соединение с базой данных будет закрыто при уничтожении.

Поскольку я подключаюсь в процессе строительства, я бы хотел использовать некоторые свойства как часть mysql_connect ... но они не инициализируются до создания. Мне было интересно, есть ли способ инициализировать переменные-члены, такие как список инициализации по элементам в C ++, но в PHP.

Ответы [ 2 ]

1 голос
/ 20 сентября 2010

создайте массив конфигурации и передайте его классу базы данных

$config = array(...);
$db = new db( $config );

class db {

    function __construct( array $config ) {
        if ( $config ) {
            $this->db_name = $config['db_name'];
            .....
        }
    }

}

Если вашим другим классам нужна информация, они также могут использовать массив.В основном шаблон реестра .

0 голосов
/ 19 сентября 2010

Один из вариантов - иметь константы класса. Я не уверен, если это именно то, что вы хотите, но они могут быть близки к решению вашей проблемы. Константы класса PHP

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...