PHP global в функциях

В чем польза глобального ключевого слова ?

Есть ли какие-либо причины предпочесть один метод другому?

  • Безопасность?
  • Производительность?
  • Что-нибудь еще?

Метод 1:

function exempleConcat($str1, $str2)
{
  return $str1.$str2;
}

Метод 2:

function exempleConcat()
{
  global $str1, $str2;
  return $str1.$str2;
}

Когда имеет смысл использовать global ?

Для меня это кажется опасным ... но это может быть просто недостаток знаний. Меня интересуют задокументированные (например, с примером кода, ссылка на документацию ...) технические причины.

Заранее спасибо!


Bounty

Это хороший общий вопрос о в теме, я (@Gordon) предлагаю вознаграждение за дополнительные ответы. Согласуется ли ваш ответ с моим или дает другую точку зрения, не имеет значения. Поскольку тема глобальная возникает то и дело, мы могли бы использовать хороший «канонический» ответ для ссылки на.

98
задан i alarmed alien 23 August 2014 в 14:38
поделиться