Помогите с глобальностью переменных

CFR

Guest
Автор оригинала: Фанат
он не отвечает.
он спрашивает.
но - парадокс - считает отвечающих дураками.
Был бы я прав, не писал бы сюда.
Я не прав!
И я никого дураками не считаю, кроме себя в данной ситуации.
Я прочитал ман. (в т.ч. по ссылке данной здесь, хотя я ее читал еще до этого)
Я не нашел там ни единого упоминания о том, что мы здесь обсуждаем (вызываемая функция... блабла....)
Скажите, где?
Итак. Читаем мануал.
Однако, внутри определенных пользователем функций вводится локальная область видимости функции. Любая, используемая внутри функции переменная, по умолчанию ограничена локальной областью видимости функции.
Что же делать? Выход есть!
После определения $a и $b внутри функции как global все ссылки на любую из этих переменных будут указывать на их глобальную версию. Не существует никаких ограничений на количество глобальных переменных, которые могут обрабатываться функцией.
Еще там есть про GLOBALS и static - и ни слова о том, о чем мы говорим! (переменная, объявленная в функции... блаблабла...)
Где я дурак?
 

Фанат

oncle terrible
Команда форума
повторяю, для слепых:
где в первой функции у тебя global?

где в функции f1(), в соответствии с мануалом, если ты хочешь иметь к ней доступ извне, надпись
global $myvar?
 

CFR

Guest
Прочитал мессагу о том, что надо делать global $myvar в f1. Так естественно все заработает.
Как я понял, ответ на мой вопрос - так как я хочу сделать, так нельзя (второй пример). Чтобы объявить впервые в f1, а в f2 сделать ее доступной.
Спасибо всем.
никого дураками не считал,
никого не учил
просто спросил, че за хрень.
а вы в ман, в ман... читал я этот ман.

-~{}~ 22.07.05 01:42:

я тупой, я тупой...
в мануале написано:
первый раз просто объявляем переменную, а дальше где надо пишем global:
PHP:
<?php  $a = 1;  $b = 2;    function Sum()  {     global $a, $b;       $b = $a + $b;  }     Sum();  echo $b;  ?>
-~{}~ 22.07.05 01:43:

это я к чему? к тому, что я в первый раз объявляю ее в f1, а в f2 я хочу ее же через глобал! Но не получается.
 

Фанат

oncle terrible
Команда форума
Ман написан для тех, кто умеет читать.
Для тех, кто читает не про глобальность, а про ОБЛАСТЬ ВИДИМОСТИ.
Для тех, кто понимает, когда ему русским языком пишут, что в функции- ЛОКАЛЬНАЯ. Без разницы - снаружи ты смотришь, или изнутри.
 

CFR

Guest
Cпасибо, теперь понял.
Ушел обратно в свой Visual Basic.
 
Сверху