Глобальные и статические переменные в PHP
Я создаю базовую структуру на PHP. Мне нужно передать данные для текущей страницы в различные функции, позволить им изменить и сохранить их, а затем передать обратно на страницу, которая будет отображаться. Первоначально я планировал хранить данные в глобальной переменной, такой как$GLOBALS['data']
, но я'Я начинаю думать, что использование глобальных является плохой идеей. Так что я'Я думаю, что вместо этого я помещу статическую переменную в системный класс и получу к ней доступ, используяsystem::$data
, Итак, мой вопрос: что было бы лучше и почему?
Это:
$GLOBALS['data'] = array();
$GLOBALS['data']['page_title'] = 'Home';
echo $GLOBALS['data']['page_title'];
Или это:
class system
{
public static $data = array()
}
function data($new_var)
{
system::$data = array_merge(system::$data, $new_var);
}
data(array('page_title' => 'Home'));
echo system::$data['page_title'];