?? -+-+.txt
字號:
目 錄
譯者序
前言
第一部分 Perl基礎
第1學時 Perl入門 3
1.1 安裝Perl 3
1.1.1 等一等,也許你已經安裝了Perl 4
1.1.2 在Windows 95/98/NT上安裝Perl 5
1.1.3 在UNIX上安裝Perl 6
1.1.4 在Macintosh系統上安裝Perl 7
1.2 文檔資料 7
1.2.1 某些特殊的文檔資料舉例 8
1.2.2 如果無法找到文檔該怎么辦 9
1.3 編寫你的第一個Perl程序 9
1.3.1 鍵入程序 9
1.3.2 運行程序 9
1.3.3 程序正確將會發生什么情況 10
1.3.4 Perl程序的具體運行過程 10
1.3.5 必須知道的一些情況 11
1.4 課時小結 12
1.5 課外作業 12
1.5.1 專家答疑 12
1.5.2 思考題 12
1.5.3 解答 13
1.5.4 實習 13
第2學時 Perl的基本構件:數字和
字符串 14
2.1 直接量 14
2.1.1 數字 14
2.1.2 字符串 15
2.2 標量變量 16
2.3 表達式和運算符 18
2.3.1 基本運算符 18
2.3.2 數字運算符 19
2.3.3 字符串運算符 19
2.4 其他運算符 20
2.4.1 單參數運算符 20
2.4.2 遞增和遞減 21
2.4.3 尖括號運算符 21
2.4.4 其他賦值運算符 22
2.4.5 關于字符串和數字的一些說明 22
2.5 練習:利息計算程序 23
2.6 課時小結 24
2.7 課外作業 24
2.7.1 專家答疑 24
2.7.2 思考題 24
2.7.3 解答 25
2.7.4 實習 25
第3學時 控制程序流 26
3.1 語句塊 26
3.2 if語句 27
3.2.1 其他關系運算符 28
3.2.2 “真”對于Perl意味著什么 29
3.2.3 邏輯運算符 30
3.3 循環 32
3.3.1 用while進行循環 32
3.3.2 使用for循環 33
3.4 其他流控制工具 33
3.4.1 奇特的執行順序 33
3.4.2 明細控制 34
3.4.3 標號 35
3.4.4 退出Perl 35
3.5 練習:查找質數 35
3.6 課時小結 37
3.7 課外作業 37
3.7.1 專家答疑 37
3.7.2 思考題 37
3.7.3 解答 38
3.7.4 實習 38
第4學時 基本構件的堆棧:列表與數組 39
4.1 將數據放入列表和數組 39
4.2 從數組中取出元素 41
4.2.1 尋找結尾 42
4.2.2 關于上下文的詳細說明 43
4.2.3 回顧以前的幾個功能 44
4.3 對數組進行操作 45
4.3.1 遍歷數組 46
4.3.2 在數組與標量之間進行轉換 46
4.3.3 給數組重新排序 48
4.4 練習:做一個小游戲 49
4.5 課時小結 51
4.6 課外作業 51
4.6.1 專家答疑 51
4.6.2 思考題 51
4.6.3 解答 52
4.6.4 實習 52
第5學時 進行文件操作 53
5.1 打開文件 53
5.1.1 路徑名 54
5.1.2 出色的防錯措施 55
5.1.3 以適當的方式運行die函數 56
5.2 讀取文件 56
5.3 寫入文件 58
5.4 自由文件、測試文件和二進制數據 60
5.4.1 自由文件句柄 60
5.4.2 二進制文件 60
5.4.3 文件測試運算符 61
5.5 課時小結 62
5.6 課外作業 62
5.6.1 專家答疑 62
5.6.2 思考題 63
5.6.3 解答 63
5.6.4 實習 63
第6學時 模式匹配 64
6.1 簡單的模式 64
6.2 元字符 66
6.2.1 一個簡單的元字符 66
6.2.2 非輸出字符 66
6.2.3 通配符 66
6.2.4 字符類 68
6.2.5 分組和選擇 69
6.2.6 位置通配符 69
6.3 替換 70
6.4 練習:清除輸入數據 70
6.5 關于模式匹配的其他問題 71
6.5.1 對其他變量進行操作 71
6.5.2 修飾符與多次匹配 72
6.5.3 反向引用 73
6.5.4 一個新函數:grep 73
6.6 課時小結 74
6.7 課外作業 74
6.7.1 專家答疑 74
6.7.2 思考題 75
6.7.3 解答 75
6.7.4 實習 75
第7學時 哈希結構 77
7.1 將數據填入哈希結構 77
7.2 從哈希結構中取出數據 78
7.3 列表與哈希結構 80
7.4 關于哈希結構的補充說明 81
7.4.1 測試哈希結構中的關鍵字 81
7.4.2 從哈希結構中刪除關鍵字 81
7.5 用哈希結構進行的有用操作 81
7.5.1 確定頻率分布 82
7.5.2 在數組中尋找惟一的元素 82
7.5.3 尋找兩個數組之間的交匯部分
和不同部分 83
7.5.4 對哈希結構進行排序 84
7.6 練習:用Perl創建一個簡單的客戶
數據庫 84
7.7 課時小結 86
7.8 課外作業 86
7.8.1 專家答疑 86
7.8.2 思考題 87
7.8.3 解答 87
7.8.4 實習 88
第8學時 函數 89
8.1 創建和調用子例程 89
8.1.1 返回子例程的值 90
8.1.2 參數 91
8.1.3 傳遞數組和哈希結構 91
8.2 作用域 92
8.3 練習:統計數字 94
8.4 函數的腳注 96
8.4.1 聲明local變量 96
8.4.2 使Perl變得更加嚴格 97
8.4.3 遞歸函數 98
8.5 課時小結 99
8.6 課外作業 99
8.6.1 專家答疑 99
8.6.2 思考題 99
8.6.3 解答 100
8.6.4 實習 100
第二部分 高級特性
第9學時 其他函數和運算符 103
9.1 搜索標量 103
9.1.1 用index進行搜索 103
9.1.2 用rindex向后搜索 104
9.1.3 用substr分割標量 104
9.2 轉換而不是替換 105
9.3 功能更強的print函數 106
9.4 練習:格式化報表 107
9.5 堆棧形式的列表 109
9.6 課時小結 110
9.7 課外作業 111
9.7.1 專家答疑 111
9.7.2 思考題 111
9.7.3 解答 112
9.7.4 實習 112
第10學時 文件與目錄 113
10.1 獲得目錄列表 113
10.2 練習:UNIX的grep 116
10.3 目錄 117
10.3.1 瀏覽目錄 117
10.3.2 創建和刪除目錄 118
10.3.3 刪除文件 119
10.3.4 給文件改名 119
10.4 UNIX系統 120
10.5 你應該了解的關于文件的所有信息 121
10.6 練習:對整個文件改名 122
10.7 課時小結 123
10.8 課外作業 124
10.8.1 專家答疑 124
10.8.2 思考題 124
10.8.3 解答 124
10.8.4 實習 125
第11學時 系統之間的互操作性 126
11.1 system()函數 126
11.2 捕獲輸出 128
11.3 管道 129
11.4 可移植性入門 131
11.5 課時小結 134
11.6 課外作業 134
11.6.1 專家答疑 134
11.6.2 思考題 135
11.6.3 解答 135
11.6.4 實習 136
第12學時 使用Perl的命令行工具 137
12.1 什么是調試程序 137
12.1.1 啟動調試程序 137
12.1.2 調試程序的基本命令 138
12.1.3 斷點 139
12.1.4 其他調試程序命令 140
12.2 練習:查找錯誤 141
12.3 其他命令行特性 142
12.3.1 單命令行程序 142
12.3.2 其他開關 143
12.3.3 空的尖括號與更多的單命令
行程序 144
12.4 課時小結 145
12.5 課外作業 145
12.5.1 專家答疑 145
12.5.2 思考題 146
12.5.3 解答 146
第13學時 引用與結構 147
13.1 引用的基本概念 147
13.1.1 對數組的引用 149
13.1.2 對哈希結構的引用 149
13.1.3 作為參數的引用 150
13.1.4 創建各種結構 151
13.2 結構的配置方法 152
13.2.1 一個例子:列表中的列表 152
13.2.2 其他結構 153
13.2.3 使用引用來調試程序 154
13.3 練習:另一個游戲——迷宮 155
13.4 課時小結 157
13.5 課外作業 157
13.5.1 專家答疑 157
13.5.2 思考題 158
13.5.3 解答 158
13.5.4 實習 158
第14學時 使用模塊 159
14.1 模塊的概述 159
14.1.1 讀取關于模塊的文檔 160
14.1.2 什么地方可能出錯 161
14.2 已安裝模塊簡介 162
14.2.1 文件和目錄簡介 162
14.2.2 拷貝文件 164
14.2.3 用于通信的Perl模塊 164
14.2.4 使用English模塊 165
14.2.5 diagnostics模塊 165
14.3 標準模塊的完整列表 166
14.4 課時小結 167
14.5 課外作業 167
14.5.1 專家答疑 167
14.5.2 思考題 168
14.5.3 解答 168
14.5.4 實習 168
第15學時 了解程序的運行性能 169
15.1 DBM文件 169
15.1.1 需要了解的重點 170
15.1.2 遍歷與DBM文件相連接的哈
希結構 170
15.2 練習:一種自由格式備忘記事板 171
15.3 將文本文件用作數據庫 173
15.4 隨機訪問文件 175
15.4.1 打開文件進行讀寫操作 175
15.4.2 在讀寫文件中移動 176
15.5 鎖定文件 176
15.5.1 鎖定UNIX和NT下的文件 178
15.5.2 在加鎖情況下進行讀寫操作 179
15.5.3 Windows 95和Windows 98下的
加鎖問題 180 15.5.4 在其他地方使用文件鎖的問題 181
15.6 課時小結 181
15.7 課外作業 181
15.7.1 專家答疑 181
15.7.2 思考題 182
15.7.3 解答 182
15.7.4 實習 182
第16學時 Perl語言開發界 183
16.1 Perl究竟是一種什么語言 183
16.1.1 Perl的簡單發展歷史 183
16.1.2 開放源 184
16.1.3 Perl的開發 185
16.2 Perl綜合存檔文件網 185
16.2.1 什么是CPAN 186
16.2.2 為什么人們愿意提供自己的開
發成果 186
16.3 下一步你要做的工作 187
16.3.1 要做的第一步工作 187
16.3.2 最有用的工具 187
16.3.3 查找程序中的錯誤 188
16.3.4 首先要靠自己來解決問題 188
16.3.5 從別人的程序錯誤中吸取教訓 189
16.3.6 請求他人的幫助 190
16.4 其他資源 191
16.5 課時小結 192
16.6 課外作業 192
16.6.1 專家答疑 192
16.6.2 思考題 192
16.6.3 解答 192
第三部分 將Perl用于CGI
第17學時 CGI概述 195
17.1 瀏覽Web 195
17.1.1 檢索一個靜態Web頁 196
17.1.2 動態Web頁—使用CGI 197
17.2 不要跳過這一節內容 198
17.3 編寫你的第一個CGI程序 199
17.3.1 在服務器上安裝CGI程序 200
17.3.2 運行你的CGI程序 201
17.4 CGI程序無法運行時怎么辦 201
17.4.1 這是你的CGI程序嗎 201
17.4.2 服務器存在的問題 202
17.4.3 排除服務器內部錯誤或500錯誤 203
17.5 課時小結 204
17.6 課外作業 204
17.6.1 專家答疑 204
17.6.2 思考題 205
17.6.3 解答 205
17.6.4 實習 206
第18學時 基本窗體 207
18.1 窗體是如何運行的 207
18.1.1 HTML窗體元素概述 207
18.1.2 單擊submit時出現的情況 208
18.2 將信息傳遞給你的CGI程序 209
18.3 Web安全性 211
18.3.1 建立傳輸明碼文本的連接 211
18.3.2 注意不安全數據 212
18.3.3 從事無法執行的操作 213
18.3.4 拒絕服務 213
18.4 賓客留言簿 214
18.5 課時小結 215
18.6 課外作業 215
18.6.1 專家答疑 215
18.6.2 思考題 216
18.6.3 解答 216
18.6.4 實習 216
第19學時 復雜窗體 217
19.1 復雜的多頁窗體 217
19.2 隱藏域 217
19.3 多頁調查窗體 219
19.4 課時小結 224
19.5 課外作業 224
19.5.1 專家答疑 224
19.5.2 思考題 225
19.5.3 解答 225
19.5.4 實習 225
第20學時 對HTTP和CGI進行操作 226
20.1 HTTP通信概述 226
20.1.1 舉例:人工檢索Web頁 227
20.1.2 舉例:返回非文本信息 228
20.2 如何調用CGI程序的詳細說明 230
20.2.1 將參數傳遞給CGI程序 230
20.2.2 特殊參數 231
20.3 服務器端的包含程序 232
20.4 部分環境函數簡介 234
20.5 重定向 235
20.6 課時小結 237
20.7 課外作業 237
20.7.1 專家答疑 237
20.7.2 思考題 237
20.7.3 解答 238
20.7.4 實習 238
第21學時 cookie 239
21.1 什么是cookie 239
21.1.1 如何創建cookie 240
21.1.2 舉例:使用cookie 241
21.1.3 另一個例子:cookie查看器 242
21.2 高級cookie特性 243
21.2.1 設置cookie終止運行的時間 243
21.2.2 cookie的局限性 244
21.2.3 將cookie發送到其他地方 244
21.2.4 限制cookie返回到的位置 246
21.2.5 帶有安全性的cookie 247
21.3 cookie存在的問題 247
21.3.1 cookie的生存期很短 247
21.3.2 并非所有瀏覽器都支持cookie 247
21.3.3 有些人不喜歡cookie 247
21.4 課時小結 248
21.5 課外作業 248
21.5.1 專家答疑 248
21.5.2 思考題 249
21.5.3 解答 250
21.5.4 實習 250
第22學時 使用CGI程序發送電子郵件 251
22.1 Internet郵件入門 251
22.1.1 發送電子郵件 252
22.1.2 發送郵件時首先應該注意的問題 252
22.2 郵件發送函數 253
22.2.1 用于UNIX系統的郵件函數 254
22.2.2 用于非UNIX系統的郵件函數 255
22.3 從Web頁發送郵件 257
22.4 課時小結 259
22.5 課外作業 259
22.5.1 專家答疑 259
22.5.2 思考題 260
22.5.3 解答 260
22.5.4 實習 260
第23學時 服務器推送和訪問次數
計數器 261
23.1 什么是服務器推送 261
23.1.1 激活服務器推送特性 262
23.1.2 一個小例子:更新Web頁上
的時鐘 262
23.1.3 另一個例子:動畫 263
23.1.4 客戶機拖拉技術 264
23.2 訪問次數計數器 264
23.2.1 編寫一個訪問次數計數器程序 266
23.2.2 圖形訪問次數計數器 267
23.3 課時小結 268
23.4 課外作業 269
23.4 1 專家答疑 269
23.4.2 思考題 269
23.4.3 解答 269
23.4.4 實習 270
第24學時 建立交互式Web站點 271
24.1 借用另一個站點的內容 271
24.1.1 注意內容的版權問題 271
24.1.2 舉例:檢索標題 272
24.2 調查窗體 275
24.2.1 調查窗體程序的第一部分:
提出問題 276
24.2.2 調查窗體程序的第二部分:
計算調查結果 277
24.3 課時小結 280
24.4 課外作業 280
24.4.1 專家答疑 280
24.4.2 思考題 281
24.4.3 解答 281
24.4.4 實習 281
第四部分 附錄
附錄 安裝模塊 285
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -