Лучший способ реализовать структуру данных в PHP? - PullRequest
2 голосов
/ 24 мая 2010

Я хочу использовать некую структуру данных в PHP (5.2), главным образом, чтобы не загрязнять глобальное пространство имен. Я думаю о двух подходах, используя массив или класс. Не могли бы вы сказать мне, какой подход лучше?

Кроме того, основным назначением будет хранение констант конфигураций.

Спасибо

$SQL_PARAMETERS = array (
    'server' => '127.0.0.1',
    'login'  => 'root');

class SqlParameters {
    const SERVER = '127.0.0.1';
    const LOGIN  = 'root';
}

echo $SQL_PARAMETERS['server'];
echo SqlParameters::SERVER;

Ответы [ 3 ]

4 голосов
/ 24 мая 2010

Я бы сказал, что классовый подход лучше, потому что вы не перепишете const или весь класс случайно. И вы также можете расширить свой класс с помощью некоторых методов, если они понадобятся вам позже.

2 голосов
/ 24 мая 2010

Если вы не захотите создавать методы и несколько экземпляров, массив будет в порядке.

0 голосов
/ 24 мая 2010

Вы сказали, что хотите избежать загрязнения своего глобального пространства имен, но создание массива сделает это: создайте глобальную переменную, которую вы будете вынуждены вызывать внутри ваших классов. Это не лучшая практика, и вы должны стремиться избегать глобальных переменных любой ценой. Пример класса, который вы разместили в своем вопросе, был бы приемлемым решением, также по причинам, указанным RaYell.

...