Установка и чтение глобальных переменных

Любые вопросы по программированию: PHP, HTML, SQL и другие языки.
Ответить
Shredder
Администратор
Сообщения: 1000
Зарегистрирован: 22.08.13 09:05

Shredder » 03.03.16 16:46

Обратимся к моему любимому источнику по вопросам PHP, сайту php.su:
Глобальные переменные в PHP

И действительно, в phpBB 3.0 всё функционирует, как написано в справке. К примеру, вставляю в posting.php код:

Код: Выделить всё

	if (тут некоторые условия для задания переменной)
	{
		$unread = true;
	}

Далее идёт вызов функции submit_post(, находящейся в файле includes/functions_posting.php, внутри которой можно использовать переменную $unread, если перед этим объявить:

Код: Выделить всё

global $unread;

Но в phpBB 3.1, при работе с событиями, чтобы $unread (или любая другая переменная) была доступна внутри события, почему-то приходится объявлять global $unread; ещё и в коде ДО вызова события, то есть необходимо править файлы движка, что в рамках создания расширений недопустимо. Соответственно, теряется возможность нормального использования global. С чем это связано? С ООП?
Мои моды и расширения для phpBB
Выполняю работы по phpBB3 на заказ. Пишите в личку или на почту.
Бесплатная поддержка - только в темах.

Xisp
Сообщения: 196
Зарегистрирован: 05.04.14 18:00

Xisp » 03.03.16 20:50

Может быть.
И да, глобальные переменные- плохая практика. У меня от них брат умер.

Shredder писал(а):сайту php.su


Какой- то дико устаревший сайт, про семёрку там только новости, а их "учебники" с "уроками" возрастом с их доменную зону.

Shredder
Администратор
Сообщения: 1000
Зарегистрирован: 22.08.13 09:05

Shredder » 03.03.16 22:09

Xisp писал(а):Может быть.

Не может быть, а точно. Я уже весь гугл прорыл. Но рабочей замены так и не нашёл. Правда, в ООП я хуже ориентируюсь, чем в обычном коде, не нравится мне он. Но если дёрнет интерес, то обязательно подучусь. А такие вопросы и их обсуждение как раз способствуют.

Xisp писал(а):Какой- то дико устаревший сайт

Ну главное, что по "традиционным" функциям справка работает. Другие сайты показались мне неудобными, особенно официальный.
Мои моды и расширения для phpBB
Выполняю работы по phpBB3 на заказ. Пишите в личку или на почту.
Бесплатная поддержка - только в темах.

Ответить