Вопрос по php – PHP 5.4.0 - Зарегистрировать глобальные устаревшие

3

Я перебрал страницу на сайте PHP и сказал, что глобальные версии будут устаревшими в 5.4.0. Я понимаю, что $ MyFormPost - это глобальная переменная из $ _POST ['MyFormPost & apos;] и $ _GET [' MyFormPost & apos;]], но мне интересно, если бы наш веб-сайт разрабатывался так, как это будет считаться устаревшим в 5.4.0.

У нас есть класс, содержание которого было опубликовано ниже, чтобы мы могли получить доступ ко всем общим классам через наше приложение. Поэтому, если мы хотим получить доступ к информации о браузере пользователей, чтобы увидеть мобильное устройство, которое они используют в любом из других классов или файлов, мы просто вызываем $ gb-> gt; BrowserData-> g_; get_MobileDevice (). Нужно ли нам начинать переключать способ создания нашего сайта?

$gb = new GlobalData;

global $BrowserData;
$BrowserData = new BrowserType();

if ($gb->BrowserData->get_MobileDevice()=='iPhone') {

}

GlobalData.class.php

<?php
class GlobalData {
        public function __get($name) {
            if (isset($GLOBALS[$name]))
                return $GLOBALS[$name];
        }
}
?>

Ваш Ответ

1   ответ
3

Это не то, чтоregister_globals является; Вам не нужно беспокоиться. Он был выключен по умолчанию начиная с PHP 4.2, и это примерно то время, когда он был удален.Вот описание того, чтоregister_globals actually does - в основном выбрасывает все переменные запроса в глобальные переменные.very плохая идея.

Хотя я все равно рекомендую использоватьglobal $somevariable; перенести глобальные переменные в текущую область вместо того, чтобы использовать тип класса, который вы используете.

Похожие вопросы