Global variant VS local variant
Get-Help Set-Variable -Param Scope
-scope <string>
Specifies the scope from which aliases should be exported. This can be a na
med scope: "global", "local", or "script", or it can be a number relative t
o the current scope (0 through the number of scopes where 0 is the current
scope and 1 is its parent).
http://blogs.msdn.com/b/powershell/archive/2007/04/14/controlling-the-scope-of-variables.aspx