Name
local
Synopsis
local vars
Declares one or more global variables
vars
to have temporary values within
the innermost enclosing block, subroutine, eval
, or file. The new value is
initially undef
for scalars and
( )
for arrays and hashes. If
more than one variable is listed, the list must be placed in
parentheses, because the operator binds more tightly than a comma.
All the listed variables must be legal lvalues, that is, something
you can assign to. This operator works by saving the current
values of those variables on a hidden stack and restoring them
upon exiting the block, subroutine, eval
, or file.
Subroutines called within the scope of a local variable will
see the localized inner value of the variable. The technical term
for this process is “dynamic scoping.” Use my
for true private variables.
Get Perl in a Nutshell, 2nd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.