Perl脚本中的新行字符

时间:2013-10-07 12:53:30

标签: perl cgi

很抱歉这个新手问题,但Perl脚本中的新行字符不起作用。也就是说,下面脚本中的\ n和\ t根本不起作用,它只显示“Hello Perl!Hello CGI!”在一条线上。通常,这种现象的原因是什么?如果有人知道,请告诉我。非常感谢你。

#!/usr/bin/perl

print "Content-Type: text/html; charset=UTF-8\n\n";

print "Hello Perl!\n";
print "Hello \t CGI!";

2 个答案:

答案 0 :(得分:4)

\n\t未按预期在html中显示。但是,您可以使用纯文本检查这些字符是否在输出中

#!/usr/bin/perl

print "Content-Type: text/plain; charset=UTF-8\n\n";

print "Hello Perl!\n";
print "Hello \t CGI!";

答案 1 :(得分:1)

该行:

print "Content-Type: text/html; charset=UTF-8\n\n";

告诉Web浏览器将HTML传递给它:(这意味着您要将HTML输出到Web浏览器)

print "Hello Perl!\n";
print "Hello \t CGI!";

在HTML \ n和\ t中无效。它不会在Web浏览器中显示也不会执行任何操作。它不会显示在Web浏览器中。

Use <br> instead of \n

You could use &nbsp;&nbsp;&nbsp;&nbsp; instead of \t 

<br> is used for a new line in HTML and &nbsp; is one white space character in HTML. 

因此,如果您要输出HTML,您的代码将需要如下所示:

#!/usr/bin/perl

print "Content-Type: text/html; charset=UTF-8\n\n";
print "Hello Perl! <br>";
print "Hello &nbsp;&nbsp;&nbsp;&nbsp; CGI!";

请记住,如果您要将HTML输出到Web浏览器,您需要通过标记和标记等来使用正确的有效HTML,但这超出了此问题的范围。