Perl脚本学习笔记(四)

简介:
29.    一旦我们将模块载入,无论是否引入特定的函数,我们均可以使用全名进行引用。
    如:
    use File:Basename qw/ /; #没有引入函数
    my $dirname = File::Basename::dirname $name; #使用模块中的dirname

30.    散列:
    %表示进行散列,
    引用《Perl语言编程_3rd》(Larry Wall等人合著)的话:
    “散列是一组无序标量,可以通过和每个标量关联的字符串进行访问.因为这个原因,散列经常被称为关联数组.但是这个名字太长了,因为会经常提到它,我们决定给它起一个简短的名字.我们称之为散列的另外一个原因是为了强调它们是无序的.(在 Perl 的内部实现中,散列的操作是通过对一个散列表查找完成的,这就是散列为什么这么快的原因,而且无论你在散列中存储多少数据,它总是很快).然而你不能 push 或 pop 一个散列,因为这样做没有意义.一个散列没有开始也没有结束.不管怎么样,散列的确非常有用而且强大.如果你不能理解散列的概念,那你还不能算真正的了解 Perl.
    ......
    因为散列是一种特殊的数组,你可以通过 {} 来获取单个的散列元素.比如,如果你想找出与关键字 Wed 对应的值,你应该使用 $longday{"Wed"}.
    ......
    注意这个例子:
    $wife{"Jacob"} = ["Leah", "Rachel", "Bilhah", "Zilpah"];   
    $wife{"Jacob"}[0] = "Leah";
       $wife{"Jacob"}[1] = "Rachel";
       $wife{"Jacob"}[2] = "Bilhah";
       $wife{"Jacob"}[3] = "Zilpah";    
    
    $kids_of_wife{"Jacob"} = {
              "Leah"   => ["Reuben", "Simeon", "Levi", "Judah", "Issachar", "Zebulun"],
              "Rachel" => ["Joseph", "Benjamin"],
              "Bilhah" => ["Dan", "Naphtali"],
              "Zilpah" => ["Gad", "Asher"],};

    $kids_of_wife{"Jacob"}{"Leah"}[0]   = "Reuben";
       $kids_of_wife{"Jacob"}{"Leah"}[1]   = "Simeon";
       $kids_of_wife{"Jacob"}{"Leah"}[2]   = "Levi";
       $kids_of_wife{"Jacob"}{"Leah"}[3]   = "Judah";
       $kids_of_wife{"Jacob"}{"Leah"}[4]   = "Issachar";
       $kids_of_wife{"Jacob"}{"Leah"}[5]   = "Zebulun";
       $kids_of_wife{"Jacob"}{"Rachel"}[0] = "Joseph";
       $kids_of_wife{"Jacob"}{"Rachel"}[1] = "Benjamin";
       $kids_of_wife{"Jacob"}{"Bilhah"}[0] = "Dan";
       $kids_of_wife{"Jacob"}{"Bilhah"}[1] = "Naphtali";
       $kids_of_wife{"Jacob"}{"Zilpah"}[0] = "Gad";
       $kids_of_wife{"Jacob"}{"Zilpah"}[1] = "Asher";”

31.    每个嵌套的 my 会生成一个新变量,每个嵌套的 local 也生成一个新变量。但是每次你使用 our 的时候,你实际上是说同一个变量,不管你有没有嵌套。





本文转自 xkdcc 51CTO博客,原文链接:http://blog.51cto.com/brantc/119060,如需转载请自行联系原作者
目录
相关文章
|
8月前
|
存储 移动开发 Perl
Perl 教程 之 Perl CGI编程 12
Perl CGI教程介绍如何通过CGI程序处理HTML表单数据。当用户从一个包含下拉选项(如百度和Google)的HTML表单提交选择后,CGI脚本`test.cgi`读取并解析POST请求中的数据。脚本将选定的值(如"百度"或"Google")存储在变量 `$site` 中,并生成一个显示所选网站的简单HTML响应。
61 5
|
8月前
|
机器学习/深度学习 移动开发 Go
Perl 教程 之 Perl CGI编程 5
Perl CGI教程讲解如何通过Perl实现文件下载。设置HTTP Header为"Content-Type:application/octet-stream; name=\"FileName\"和"Content-Disposition: attachment; filename=\"FileName\",然后打开文件并逐块读取内容输出,实现文件下载功能。
44 1
|
8月前
|
移动开发 Perl
Perl 教程 之 Perl CGI编程 11
Perl CGI教程介绍了如何通过CGI程序接收HTML表单(Textarea)中的多行数据。test.html是一个包含Textarea的表单,提交后调用test.cgi脚本。test.cgi读取POST请求的数据,解析name/value对,获取textarea内容并显示在HTML响应中。在浏览器中,用户输入的内容会以标题形式展示。
55 4
|
8月前
|
移动开发 Perl
Perl 教程 之 Perl CGI编程 10
Perl CGI教程展示了如何通过CGI程序与HTML表单交互。当用户在HTML页面(test.html)中选择百度或Google并提交后,数据发送到CGI脚本(test.cgi)。脚本解析请求,获取选中的站点($site),然后生成返回的HTML响应,显示用户选择的网站。
61 5
|
8月前
|
移动开发 网络安全 Perl
Perl 教程 之 Perl CGI编程 13
Perl CGI教程介绍了CGI(Common Gateway Interface)作为服务器与客户端交互的接口,并讲解了如何使用Cookie来弥补HTTP协议中用户身份验证的不足。Cookie通过设置HTTP头部的Set-Cookie字段,包括name、expires、path、domain和secure属性来实现。在Perl中设置Cookie涉及打印包含这些字段的响应头。示例代码展示了如何设置UserID、Password以及过期时间等Cookie信息。
53 2
|
8月前
|
存储 数据安全/隐私保护 Perl
Perl 教程 之 Perl CGI编程 14
Perl CGI教程介绍了CGI(Common Gateway Interface)的概念,它是一种让服务器与客户端HTML交互的程序接口。CGI弥补了HTTP协议不识别用户身份的缺陷。Cookie用于身份验证,当用户访问脚本时,信息存储在环境变量HTTP_COOKIE中。示例代码展示了如何从HTTP_COOKIE检索Cookie信息,包括UserID和Password,输出用户ID和密码。
62 2
|
8月前
|
移动开发 数据安全/隐私保护 Perl
Perl 教程 之 Perl CGI编程 8
Perl CGI编程教程讲解了如何通过CGI接口与HTTP服务器交互。文章介绍了CGI的概念,强调使用POST方法传递敏感数据的安全性。示例脚本`test.cgi`演示了处理POST表单数据的方法,读取并显示输入的站点名称和URL。同时,给出了一个HTML表单`test.html`,用于通过POST方法向`test.cgi`提交数据。
54 2
|
8月前
|
移动开发 Perl
Perl 教程 之 Perl CGI编程 9
Perl CGI教程讲解了如何通过CGI程序处理HTML表单中的checkbox数据。在示例中,HTML表单包含两个checkbox(百度和Google),提交后,CGI脚本`test.cgi`读取并解析POST数据,判断每个选项是否被选中,并生成相应HTML响应显示选中状态。
38 1
|
8月前
|
Shell Linux Apache
Perl 教程 之 Perl CGI编程 1
CGI(Common Gateway Interface)是服务器与客户端交互的接口,允许执行如Perl的脚本处理用户请求。当浏览器访问URL,服务器解析请求,查找文件,若存在则返回内容。CGI程序可采用多种语言编写。Apache服务器中,CGI脚本通常存放在`/var/www/cgi-bin`,扩展名`.cgi`或`.pl`。要启用CGI,需配置Apache的httpd.conf
41 2
|
8月前
|
缓存 Perl 移动开发
Perl 教程 之 Perl CGI编程 6
Perl CGI教程介绍了CGI(Common Gateway Interface)是一种让服务器与客户端HTML交互的程序接口。GET方法通过URL传递编码数据,例如`/cgi-bin/test.cgi?name=百度&url=http://www.baidu.com`。CGI脚本示例展示了如何解析GET请求中的参数并生成HTML响应。注意,GET请求可能出现在浏览器历史和缓存中,不适合敏感数据传输,并且有长度限制。
33 1

相关实验场景

更多