Przecież od jakiegoś już postu piszę, że chodzi o sytuację w dwóch skryptach, w którym jeden odpalany jest w drugim (i które używały tymczasowych zmiennych o takiej samej nazwie lecz różnych zastosowaniach).
Od jakiegoś czasu ja też wiem gdzie robisz błąd, ale pytasz o teorię... rozwiązanie już znasz, ale uparłeś się je ignorować.
Pisząc jakiś skrypt traktuje go jako wykonanie jakiegoś podzadania (w pewnej całości) abstrahując od reszty. Nie chce mi się sprawdzać, czy jakiś skrypt wywołujący ten bieżący przypadkiem nie używa zmiennej lokalnej o takiej samej nazwie (lub w przyszłości przecież mogę coś zmienić i zapewne bym zapomniał o takim drobiazgu jak powtórzonej nazwie zmiennej lokalnej).
W tej chwili w misji, z której problematyczny skrypt pochodzi na razie mam ok. 50 skryptów. Wywołania skryptów mogą i pewnie nieraz się jeszcze zmienią.
Zadeklarowanie zmiennych lokalnych jako prywatnych w tym przypadku uważam za dobrą praktykę.
A po jaką cholerę ?? Robisz to chyba tylko po to, aby mieć dalej te same problemy, czy to kwestia niezrozumiena co chcesz osiągnąć ?
Im masz więcej tych skryptów tym bardziej zwiększasz prawdopodopieństwo, że zmienne 'private' się gdzieś spropagują i zinterferują ze sobą.
No, ale jeśli moje tłumaczenie Ci wciąż niczego nie wyjaśniła, to trudno, rób co chcesz - dla mnie EOT.