Синтаксическая ошибка PHP в установке глобальной переменной

Очень простым языком .
Ошибка в том, что вы используете переменную $user_location, которая не была определена вами ранее и не имеет никакого значения. Поэтому я рекомендую вам объявить эту переменную до используя it, например:


$user_location = '';
или
$user_location = 'Los Angles';
Это очень распространенная ошибка Вы можете столкнуться. Так что не волнуйтесь, просто объявите переменную и Наслаждайтесь кодированием .
5
задан Russ Bradberry 17 July 2009 в 22:33
поделиться

4 ответа

global - ключевое слово, которое следует использовать само по себе. Его нельзя совмещать с заданием. Итак, нарежьте его:

global $x;
$x = 42;

Кроме того, как упоминает Зенхэм , global используется внутри функций для доступа к переменным во внешней области видимости. Таким образом, использование global в том виде, в каком оно представлено, не имеет особого смысла.

Еще один совет (хотя он не совсем поможет вам с синтаксическими ошибками): добавьте следующую строку в начало основного файла, чтобы справка по отладке ( документация ):

error_reporting(E_ALL);
9
ответ дан 18 December 2019 в 12:00
поделиться

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

global $a;

... в начало функции.

4
ответ дан 18 December 2019 в 12:00
поделиться

См. здесь . global - это модификатор, который означает, что переменная поступает из глобальной области видимости. Это должно быть просто

<?
ob_start();

$siteRoot        =       '/httpdocs/';
$reportRoot      =       '/reports/';

и в функциях, которые их используют (но на этой странице их нет)

function f() {
  global $siteRoot, $reportRoot;
  ...
}
2
ответ дан 18 December 2019 в 12:00
поделиться

Вы должны использовать global без присваивания, только переменную.

Поскольку вы не выполняете функции, ключевое слово global вообще не требуется:

$siteRoot        =       '/httpdocs/';
$reportRoot      =       '/reports/';

Если вам нужны переменные в функции, просто добавьте:

global $siteRoot;
global $reportRoot
0
ответ дан 18 December 2019 в 12:00
поделиться
Другие вопросы по тегам:

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