Многие говорят об этом, но не все могут дать вразумительный ответ на вопрос: «Почему не следует использовать `global` в PHP»?
Мой текущий проект построен по принципу OOM (Object-oriented modelling).
Есть файл
Потом есть файл
или например,
И это та самая часть кода, от которой я хотел бы избавиться.
Кто может предложить вариант доступа к массиву
Мой текущий проект построен по принципу OOM (Object-oriented modelling).
Есть файл
config.php
. Данный файл содержит массив, который выглядит примерно так:$config = array();
$config['site_name'] = 'Site Name';
$config['base_path'] = '/home/domain.com/public_html/';
$config['images_path'] = $config['images_path'] . '/media/images';
и т.д.
Потом есть файл
functions.php
, который, практически везде, требуется на каждой странице (e.g.( require('/include/functions.php');
)
) и внутри functions.php
для того, чтобы получить доступ к переменным из config.php
, т.е. массиву $config
, мне всегда приходится использовать global $config;
или например,
global $db;
И это та самая часть кода, от которой я хотел бы избавиться.
Кто может предложить вариант доступа к массиву
$config
и другим подобным массивам, например $db
, без использования ключевое слово global
, а главное объяснить причину, почему использование global
является не просто плохим тоном, особенно в применении с OOP (Object-oriented programming)?