Глобальная переменная PHP внутри функции класса - PullRequest
0 голосов
/ 24 июля 2011

Каким образом внутри функции, которая находится внутри класса, я не могу сделать следующее утверждение:

global $connected = true;

Но я могу сделать это:

global $connected;
$connected = true;

Ответы [ 2 ]

1 голос
/ 24 июля 2011

Приведение $connected в область видимости и присвоение ей значения - это две отдельные вещи.

Нет причин, чтобы они были возможны в одном утверждении, что на самом деле не имеет особого смысла.


Имеет ли следующий код:

function foo() {
   global $x = 5;
}
  • Привести «глобальное выражение» $x = 5 в область действия?
  • Привести «глобальное выражение» 5 в область действия?
  • Назначить 5 глобальному $x?
  • Назначить 5 глобальному $x изатем ввести $x в сферу?

Я, конечно, знаю, что вы намерены обозначить последнее, а первые два не имеют смысла.Но это не ясно из предложенного заявления.Это был бы плохой синтаксис.

0 голосов
/ 24 июля 2011

Потому что внутри функции сначала нужно объявить глобальную переменную. Это то, что вы должны сделать в начале функции. Таким образом вы можете активировать определенную переменную, которая не была передана.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...