my VARLIST
my TYPE VARLIST
my VARLIST : ATTRS
my TYPE VARLIST : ATTRS

一個 my 宣告列出的變數為封閉區塊、檔案或 eval 的區域 (詞彙) 變數。如果列出多個變數,清單必須放在括號中。

請注意,對於括號清單,undef 可用作虛擬佔位符,例如跳過初始值的指定

my ( undef, $min, $hour ) = localtime;

在同一個範圍或陳述式中重新宣告一個變數會「遮蔽」前一個宣告,建立一個新的實體並防止存取前一個實體。這通常是不需要的,如果啟用警告,將會在 shadow 類別中產生警告。

TYPE 和 ATTRS 的確切語意和介面仍在演進中。TYPE 可以是一個裸字、使用 use constant 宣告的常數,或 __PACKAGE__。它目前繫結到 fields pragma 的使用,而屬性則使用 attributes pragma 處理,或從 Perl 5.8.0 開始也透過 Attribute::Handlers 模組處理。請參閱 "perlsub 中的 Private Variables via my()" 以取得詳細資訊。