here document即表示为一行或多行文字。文本可以包含新的行,单引号,双引号。here document可以很容易地将多行文字包含在Perl程序中。当你想要进行大量的输出,尤其是当输出包含很多行的时候,here document的用处更为明显。
here documents的引入是以两个小于(<<)号为标志,而两个小于号后面紧跟着一个字符,这一个字符表示被引用内容的结束。从下一行开始到结束字符的所有内容都是被引用资料。
这里为使用here document输出HTML代码的范例:
print <<END_OF_STRING;
<html>
<head>
<title>Perl Tips - 'here' documents</title>
</head>
<body>
<h1>This is a 'here' document in Perl</h1>
</body>
</html>
END_OF_STRING
两个小于号之后必须为结束字符,并且它必须出现在最后一行。在结束字符的两侧都不能有空白字符(white space),并且必须在结束行结束引用。
你可以通过合适的引号(单引号,双引号等)来控制引用类型。你也可以在单一的行中结合多个here documents,或者使用它们来调用一个子程序。
print "Poem 1 is ", <<POEM1, "Poem
2 is ", <<POEM2;
The rain in Spain
Falls mainly on the plain
POEM1
Now is the time
For all good men
To come to
The aid of their country
POEM2
用于缩进文字处理的任何leading spaces或者tabs将被包括于最后的字符中。