学通PHP的24堂课

副标题:无

作   者:潘凯华,刘欣,杨明等编著

分类号:

ISBN:9787302255420

微信扫一扫,移动浏览光盘

简介

   杨明等的《学通PHP的24堂课》以24堂课的形式,从初中级用户的角度   出发,突出学、练、用相结合,用科学合理的设计全面讲述了使用PHP进行   程序开发的必备知识和技能,突出学、练、用相结合。主要包括PHP概述、   PHP基础、PHP函数、PHP流程控制语句、PHP数组应用、PHP与Web页面交互   、MySQL数据库技术、PHP数据库编程技术、Cookie与会话控制、字符串高   级处理技术、日期和时间的处理技术、图形图像处理技术、文件目录处理   技术、面向对象的程序设计、PHP与XML技术、PDO数据库抽象层、Smarty模   板技术、Zend Framework框架、PHP的安全与防护、PHP的字符编码、程序   调试与错误处理、应用Smarty模板开发电子商务网站、Zend Framework框   架开发明日搜索引擎和学校图书馆管理系统。    《学通PHP的24堂课》适合有志于从事软件开发的初学者、高校计算机   相关专业学生和毕业生,也可作为软件开发人员的参考手册,或者高校的   教学参考书。    本书通过教学视频、实例训练、综合应用、项目实践、自我测试、行   动指南逐步深入和强化训练等方式,并辅之以心理励志,来持续激发读者   主动学习、自发学习。    本书给出了368个小型实例,226个综合应用,6个项目案例(部分在光   盘中),各类技巧、试验200余个,测试题目210个,以方便读者训练、测   试和快速提升。    本书DVD光盘给出了130集(423段)多媒体教学视频讲解,每个实例都   给出了相应的源程序,可直接复制源码学习或应用。   

目录

《学通php的24堂课》

第1部分 基础篇
第1堂课 php概述 3

视频讲解:110分钟

1.1 怎样学好php 4

1.1.1 什么是php 4

1.1.2 php的优势 4

1.1.3 如何学好编程 6

1.1.4 下载php及相关软件 7

1.1.5 代码编辑工具 8

1.1.6 下载php用户手册 9

1.2 环境的搭建 9

1.2.1 appserv——windows版php集成化

安装包 9

1.2.2 xampp——linux版php集成化

安装包 11

1.3 php开发环境的关键配置信息 13

1.3.1 apache服务器的基本配置 13

1.3.2 php.ini文件的基本配置 13

1.4 解决php的常见配置问题 14

.1.4.1 解决apache服务器端口冲突 15

1.4.2 设置php的系统当前时间 15

1.4.3 增加php扩展模块 15

1.5 照猫画虎——基本功训练 15

1.5.1 基本功训练1——测试php环境是否

搭建成功 15

1.5.2 基本功训练2——第一次登录phpmyadmin

图形化管理工具 16

1.5.3 基本功训练3——浏览php环境

配置说明 16

1.5.4 基本功训练4——解析php环境搭建的

四大目录 17

1.5.5 基本功训练5——编辑第一个php程序 18

1.6 情景应用——拓展与实践 19

1.6.1 情景应用1——输出系统的当前时间 19

1.6.2 情景应用2——输出“明日科技

欢迎您!” 20

1.6.3 情景应用3——输出一个漂亮的图片 20

1.6.4 情景应用4——更改apache服务器的

端口号为82 21

1.6.5 情景应用5——apache端口号修改后运行

第一个php程序 21

1.7 自我测试 22

1.8 行动指南 23

1.9 成功可以复制——php开山鼻祖

rasmus lerdorf 24

第2堂课 php基础 25

视频讲解:140分钟

2.1 php工作原理 26

2.2 php标记 27

2.3 代码注释 27

2.3.1 使用php注释 27

2.3.2 有效使用注释 28

2.4 php常量 29

2.4.1 声明和使用常量 29

2.4.2 预定义常量 30

2.5 php变量 31

2.5.1 声明变量 31

2.5.2 变量作用域 33

2.5.3 可变变量 35

2.6 php数据类型 35

2.6.1 标量数据类型 35

2.6.2 复合数据类型 38

2.6.3 特殊数据类型 39

2.6.4 转换数据类型 39

2.6.5 检测数据类型 40

2.7 php的运算符 41

2.7.1 算术运算符 41

2.7.2 字符串运算符 42

2.7.3 赋值运算符 42

2.7.4 位运算符 43

2.7.5 递增或递减运算符 43

2.7.6 逻辑运算符 44

2.7.7 比较运算符 45

2.7.8 三元运算符 46

2.7.9 运算符的使用规则 46

2.8 照猫画虎——基本功训练 47

2.8.1 基本功训练1——获取当前执行

文件名称 47

2.8.2 基本功训练2——加法计算器 48

2.8.3 基本功训练3——输出姚明的个人信息 48

2.8.4 基本功训练4——比较某一天的产品

销量 49

2.8.5 基本功训练5——根据工资多少判断

购物地点 50

2.9 情景应用——拓展与实践 50

2.9.1 情景应用1——在留言板中输出系统

当前时间 50

2.9.2 情景应用2——根据奇偶天数安排

工作任务 51

2.9.3 情景应用3——计算长方形的面积 52

2.9.4 情景应用4——检测变量是否为整型 52

2.9.5 情景应用5——通过数据递增运算

统计网站访问量 53

2.9.6 情景应用6——输出学生的考试成绩 54

2.10 自我测试 54

2.11 行动指南 55

2.12 成功可以复制——杀毒王

王江民 56

第3堂课 php函数 59

视频讲解:100分钟

3.1 php函数介绍 60

3.1.1 定义和调用函数 60

3.1.2 在函数间传递参数 60

3.1.3 从函数中返回值 62

3.1.4 变量函数 62

3.1.5 对函数的引用 63

3.1.6 取消引用 63

3.2 php变量函数库 64

3.3 php字符串函数库 65

3.4 php日期时间函数库 66

3.5 php数学函数库 67

3.6 php文件系统函数库 68

3.7 mysql函数库 70

3.8 照猫画虎——基本功训练 71

3.8.1 基本功训练1——判断用户提交用户名

是否为空 71

3.8.2 基本功训练2——打印输出员工的

个人信息 72

3.8.3 基本功训练3——输出公司的企业文化 72

3.8.4 基本功训练4——计算密码长度 73

3.8.5 基本功训练5——验证输入时间是否

有效 73

3.8.6 基本功训练6——获取商品销量的

最高值 74

3.8.7 基本功训练7——读取文本文件中的

数据 75

3.9 情景应用——拓展与实践 76

3.9.1 情景应用1——控制帖子标题的输出

长度 76

3.9.2 情景应用2——去除用户填写注册

信息中的空格 77

3.9.3 情景应用3——对关键字进行描红 78

3.9.4 情景应用4——网页闹钟 79

3.9.5 情景应用5——幸运数字抽奖 80

3.9.6 情景应用6——数字验证码 80

3.9.7 情景应用7——文本文件统计网站

访问量 81

3.9.8 情景应用8——购物车中商品的输出 83

3.9.9 情景应用9——中文图像验证码 83

3.10 自我测试 84

3.11 行动指南 85

3.12 成功可以复制——缔造华人的

硅谷传奇杨致远 86

第4堂课 php流程控制语句 89

视频讲解:95分钟

4.1 程序的3种控制结构 90

4.1.1 顺序结构 90

4.1.2 选择(分支)结构 90

4.1.3 循环结构 91

4.2 条件控制语句 91

4.2.1 if条件控制语句 92

4.2.2 switch多分支语句 93

4.3 循环控制语句 95

4.3.1 while循环语句 95

4.3.2 do…while循环语句 96

4.3.3 for循环语句 97

4.3.4 foreach循环语句 98

4.4 跳转语句 100

4.4.1 break跳转语句 100

4.4.2 continue跳转语句 101

4.5 包含语句 102

4.5.1 include()语句 103

4.5.2 require()语句 103

4.5.3 include_once()语句 104

4.5.4 require_once()语句 105

4.5.5 include()语句和require()语句的区别 106

4.6 照猫画虎——基本功训练 107

4.6.1 基本功训练1——对与错的判断 107

4.6.2 基本功训练2——for语句计算阶乘 107

4.6.3 基本功训练3——if语句判断闰年 108

4.6.4 基本功训练4——用switch语句计算

商品的折扣价格 108


4.6.5 基本功训练5——向一个循环语句中

发布终止指令 109

4.7 情景应用——拓展与实践 110

4.7.1 情景应用1——使用if语句判断美女

征婚条件 110

4.7.2 情景应用2——使用switch语句定制网页

每日问候语 112

4.7.3 情景应用3——使用while语句循环读取

数组中数据 113

4.7.4 情景应用4——switch网页框架 114

4.7.5 情景应用5——使用for循环语句实现

多图片上传 115

4.8 自我测试 116

4.9 行动指南 118

4.10 成功可以复制——bea创始人

之一庄思浩 119

第5堂课 php数组应用 121

视频讲解:105分钟

5.1 数组概述 122

5.2 数组类型 122

5.3 声明数组 123

5.3.1 用户创建数组 123

5.3.2 函数创建数组 124

5.3.3 创建二维数组 124

5.4 遍历、输出数组 125

5.4.1 遍历数组 125

5.4.2 输出数组元素 128

5.5 php数组函数 128

5.5.1 统计数组元素个数 128

5.5.2 向数组中添加元素 129

5.5.3 获取数组中最后一个元素 129

5.5.4 删除数组中重复元素 129

5.5.5 获取数组中指定元素的键名 130

5.6 php全局数组 131

5.6.1 $_server[ ]全局数组 131

5.6.2 $_get[ ]和$_post[ ]全局数组 132

5.6.3 $_cookie全局数组 133


5.6.4 $_env[ ]全局数组 133

5.6.5 $_request[ ]全局数组 133

5.6.6 $_session[ ]全局数组 134

5.6.7 $_files[ ]全局数组 134

5.7 照猫画虎——基本功训练 134

5.7.1 基本功训练1——输出数组中元素值 134

5.7.2 基本功训练2——遍历数组 135

5.7.3 基本功训练3——foreach语句

遍历数组 135

5.7.4 基本功训练4——将数组元素转换成

字符串 136

5.7.5 基本功训练5——去除数组中重复的

元素 136

5.7.6 基本功训练6——向数组中添加元素 137

5.7.7 基本功训练7——获取服务器端的ip

地址 137

5.8 情景应用——拓展与实践 138

5.8.1 情景应用1——字符串数组排序 138

5.8.2 情景应用2——获取用户注册信息 139

5.8.3 情景应用3——获取上传文件的数据 140

5.8.4 情景应用4——生成在线考试题 140

5.8.5 情景应用5——通过客户端ip地址限制

投票次数 141

5.9 自我测试 142

5.10 行动指南 143

5.11 成功可以复制——迅雷创始人

邹胜龙 144

第6堂课 php与web页面交互 147

视频讲解:225分钟

6.1 表单概述 148

6.1.1 创建表单 148

6.1.2 添加表单元素 148

6.1.3 定义表单数据提交方法 152

6.2 获取表单提交的数据 154

6.2.1 $_get[]获取表单提交数据 154

6.2.2 $_post[]获取表单提交数据 154

6.3 获取超链接传递的数据 155

6.3.1 通过超链接传递数据 156

6.3.2 通过$_get[]获取超级链接传递的数据 156

6.3.3 对超链接传递的数据进行编码、

解码 157

6.4 了解javascript脚本 158

6.4.1 javascript语言基础 158

6.4.2 通过javascript脚本自定义函数 160

6.4.3 javascript脚本嵌入方式 161

6.4.4 javascript常用事件 166

6.5 照猫画虎——基本功训练 167

6.5.1 基本功训练1——设计一个用户登录

表单 167

6.5.2 基本功训练2——验证用户名和密码

不能为空 168

6.5.3 基本功训练3——输出用户登录信息 169

6.5.4 基本功训练4——验证email地址格式

是否正确 171

6.5.5 基本功训练5——验证用户两次输入的

密码是否一致 172

6.6 情景应用——拓展与实践 173

6.6.1 情景应用1——开发一个用户注册表单 173

6.6.2 情景应用2——验证用户注册信息

是否合理 174

6.6.3 情景应用3——限制多行文本域输入的

字符个数 176

6.6.4 情景应用4——设置文本框的只读

属性 178

6.6.5 情景应用5——对超链接传递的数据

进行编码 179

6.7 自我测试 179

6.8 行动指南 180

6.9 成功可以复制——软件业的

华人教父王嘉廉 181

第7堂课 mysql数据库技术 183

视频讲解:155分钟

7.1 mysql概述 184

7.1.1 mysql的特点 184

7.1.2 sql和mysql 184

7.2 mysql服务器的启动和关闭 185

7.2.1 启动mysql服务器 185

7.2.2 连接mysql服务器 186

7.2.3 关闭mysql服务器 187

7.3 操作mysql数据库 187

7.3.1 创建新数据库 187

7.3.2 选择指定数据库 188

7.3.3 删除指定数据库 188

7.4 操作mysql数据表 189

7.4.1 创建一个表 189

7.4.2 查看数据表结构 190

7.4.3 修改数据表结构 191

7.4.4 重命名数据表 192

7.4.5 删除指定数据表 192

7.5 操作mysql数据 193

7.5.1 向数据表中添加数据 193

7.5.2 更新数据表中数据 193

7.5.3 删除数据表中数据 194

7.5.4 查询数据表中数据 194

7.6 mysql数据类型 197

7.6.1 数字类型 197

7.6.2 字符串类型 198

7.6.3 日期和时间数据类型 199

7.7 phpmyadmin管理mysql数据库 200

7.7.1 管理数据库 200

7.7.2 管理数据表 201

7.7.3 管理数据记录 203

7.7.4 导入导出数据 206

7.8 照猫画虎——基本功训练 208

7.8.1 基本功训练1——创建db_book图书

数据库 208

7.8.2 基本功训练2——在db_book数据库中

创建图书信息表tb_mrbook 208

7.8.3 基本功训练3——向tb_mrbook表中添加

数据 209

7.8.4 基本功训练4——修改tb_mrbook表中的

数据 210

7.8.5 基本功训练5——删除tb_mrbook表中

指定数据 210

7.9 情景应用——拓展与实践 211

7.9.1 情景应用1——通过命令模式备份和

恢复数据库 211

7.9.2 情景应用2——mysql的存储过程 213

7.9.3 情景应用3——使用phpmyadmin设置

编码格式 214

7.9.4 情景应用4——通过phpmyadmin添加

服务器新用户 215

7.9.5 情景应用5——在phpmyadmin中重置

mysql服务器登录密码 216

7.10 自我测试 217

7.11 行动指南 218

7.12 成功可以复制——图文世界的

缔造者约翰·沃洛克 219

第8堂课 php数据库编程技术 221

视频讲解:205分钟

8.1 php操作mysql数据库的步骤 222

8.2 php操作mysql数据库的方法 222

8.2.1 mysql_connect()函数连接mysql

服务器 222

8.2.2 mysql_select_db()函数选择mysql

数据库 223

8.2.3 mysql_query()函数执行sql语句 223

8.2.4 mysql_fetch_array()函数将结果集返回到

数组中 224

8.2.5 mysql_fetch_row()函数从结果集中获取

一行作为枚举数组 225

8.2.6 mysql_num_rows()函数获取查询结果

集中的记录数 226

8.2.7 mysql_free_result()函数释放内存 227

8.2.8 mysql_close()函数关闭连接 227

8.3 管理mysql数据库中的数据 228

8.3.1 向数据库中添加数据 228

8.3.2 浏览数据库中的数据 229

8.3.3 编辑数据库中的数据 230

8.3.4 从数据库中删除数据 231

8.3.5 批量数据操作 233

8.4 照猫画虎——基本功训练 234

8.4.1 基本功训练1——连接db_database08

数据库 234

8.4.2 基本功训练2——查询图书信息表中的

前3条记录 235

8.4.3 基本功训练3——对查询结果进行降序

排列输出 236

8.4.4 基本功训练4——更新指定图书的

信息 237

8.4.5 基本功训练5——删除指定的用户

信息 239

8.5 情景应用——拓展与实践 240


8.5.1 情景应用1——用户注册模块 240

8.5.2 情景应用2——用户登录模块 242

8.5.3 情景应用3——浏览注册用户信息 242

8.5.4 情景应用4——查询注册用户 243

8.5.5 情景应用5——修改指定用户的

注册信息 244

8.5.6 情景应用6——分页浏览用户注册

信息 246

8.6 自我测试 247

8.7 行动指南 248

8.8 成功可以复制——射击游戏之父

约翰·卡马克 249


第2部分 提高篇


第9堂课 cookie与会话控制 253

视频讲解:145分钟

9.1 会话的操作 254

9.1.1 创建会话 254

9.1.2 配置php的会话 256

9.2 会话的高级应用 257

9.2.1 session临时文件 257

9.2.2 session缓存 258

9.2.3 session数据库存储 259

9.3 cookie的操作 259

9.3.1 创建cookie 260

9.3.2 访问cookie 261

9.3.3 删除cookie 261

9.4 照猫画虎——基本功训练 262

9.4.1 基本功训练1——初始化session

变量 262

9.4.2 基本功训练2——通过session变量

在页面间传递数据 262

9.4.3 基本功训练3——通过session变量

判断页面的访问权限 263

9.4.4 基本功训练4——cookie控制网页

访问时间 264

9.4.5 基本功训练5——通过cookie保存用户

登录信息 265

9.5 情景应用——拓展与实践 266

9.5.1 情景应用1——对session变量编码

和解码 266

9.5.2 情景应用2——通过session变量屏蔽

刷新页面对计数器的影响 267

9.5.3 情景应用3——通过cookie计算在线

考试答题时间 268

9.5.4 情景应用4——cookie自动登录 269

9.5.5 情景应用5——通过session控制

页面的背景色 270

9.6 自我测试 271

9.7 行动指南 272

9.8 成功可以复制——微型博客创始人

埃文·威廉姆斯 273

第10堂课 字符串高级处理技术 275

视频讲解:106分钟

10.1 初识字符串 276

10.2 转义、还原字符串 276

10.3 截取字符串 277

10.4 分割、合成字符串 278

10.5 替换字符串 279

10.5.1 str_ireplace()函数 279

10.5.2 substr_replace()函数 280

10.6 检索字符串 281

10.6.1 strstr()函数 281

10.6.2 substr_count()函数 281

10.7 去掉字符串首尾空格和特殊字符 282

10.7.1 ltrim()函数 282

10.7.2 rtrim()函数 283

10.7.3 trim()函数 283

10.8 字符串与html转换 284

10.9 正则表达式 284

10.9.1 什么是正则表达式 284

10.9.2 正则表达式语法规则 285

10.10 pcre兼容正则表达式函数 286

10.10.1 字符串的匹配与查找 286

10.10.2 字符串的替换 287

10.10.3 字符串的分割 288

10.11 照猫画虎——基本功训练 289

10.11.1 基本功训练1——在网页中直接

输出html脚本 289

10.11.2 基本功训练2——substr()函数截取

超长字符串 289

10.11.3 基本功训练3——统一英文注册用户

首字母的大小写 290

10.11.4 基本功训练4——货币数据的

格式化输出 291

10.11.5 基本功训练5——验证email地址格式

是否正确 291

10.11.6 基本功训练6——实现字符串的

替换 292

10.12 情景应用——拓展与实践 293

10.12.1 情景应用1——在论坛的帖子对php

脚本进行转换输出 293

10.12.2 情景应用2——以省略模式输出论坛中

最新动态标题 293

10.12.3 情景应用3——对查询的关键字进行

描红、加粗 294

10.12.4 情景应用4——通过字符串截取控制

图像验证码的输出 295

10.12.5 情景应用5——验证上传文件的格式

是否正确 296

10.12.6 情景应用6——验证用户提交的数据

是否是整数 296

10.13 自我测试 297

10.14 行动指南 298

10.15 成功可以复制——善于抓住

时机的人徐少春 299

第11堂课 日期和时间的处理技术 301

视频讲解:108分钟

11.1 php的时间观念 302

11.1.1 在php.ini文件中设置时区 302

11.1.2 通过date_default_timezone_set函数

设置时区 302

11.2 unix时间戳 302

11.2.1 获取任意日期、时间的时间戳 303

11.2.2 获取当前时间戳 303

11.2.3 日期、时间转换为unix时间戳 304

11.3 日期和时间的处理 304

11.3.1 格式化日期和时间 305

11.3.2 获取日期和时间信息 306

11.3.3 检验日期和时间的有效性 307

11.4 照猫画虎——基本功训练 308

11.4.1 基本功训练1——获取指定时间的unix

时间戳 308

11.4.2 基本功训练2——获取系统当前时间的

时间戳 308

11.4.3 基本功训练3——输出系统当前时间 309

11.4.4 基本功训练4——倒计时 309

11.4.5 基本功训练5——获取本地时间 310

11.5 情景应用——拓展与实践 310

11.5.1 情景应用1——比较两个时间的大小 310

11.5.2 情景应用2——网页闹钟 311

11.5.3 情景应用3——计算程序的运行时间 311

11.5.4 情景应用4——输出中文格式的日期和

时间 312

11.5.5 情景应用5——检验日期和时间的

有效性 312

11.6 自我测试 313

11.7 行动指南 314

11.8 成功可以复制——c#语言之父

安德斯·海尔斯伯格 315

第12堂课 图形图像处理技术 317

视频讲解:125分钟

12.1 了解gd2函数库 318

12.2 设置gd2函数库 318

12.3 学习常用图像处理技术 318

12.3.1 创建画布 319

12.3.2 颜色处理 319

12.3.3 绘制文字 320

12.3.4 输出图像 322

12.3.5 销毁图像 323

12.4 运用jpgraph类库绘制图像 323

12.4.1 jpgraph类库简介 323

12.4.2 jpgraph的安装 323

12.4.3 jpgraph创建3d饼形图展示部门

业绩比较 324

12.5 照猫画虎——基本功训练 325

12.5.1 基本功训练1——绘制一个正方形 325

12.5.2 基本功训练2——在画布中输出一行

英文字符串 326

12.5.3 基本功训练3——在背景图像上输出

北京欢迎您 326

12.5.4 基本功训练4——在照片上书写文字 327

12.5.5 基本功训练5——jpgraph创建折线图

分析图书销售走势 328

12.6 情景应用——拓展与实践 329

12.6.1 情景应用1——gd2函数生成图像

验证码 329

12.6.2 情景应用2——通过图像显示密码

安全强度 330

12.6.3 情景应用3——通过柱状图展示2010年

第一季度编程词典销量 331

12.6.4 情景应用4——通过折线图分析2010年

公司销售额 333

12.6.5 情景应用5——通过饼形图区块分析2010

年图书销量 334

12.6.6 情景应用6——制作生活画册 334

12.7 自我测试 336

12.8 行动指南 337

12.9 成功可以复制——因特网的点火人

马克·安德森 338

第13堂课 文件目录处理技术 341

视频讲解:95分钟

13.1 基本的文件处理技术 342

13.1.1 打开一个文件 342

13.1.2 读取文件内容 344

13.1.3 向文件中写入数据 347

13.1.4 关闭文件指针 349

13.2 目录操作技术 349

13.2.1 打开指定目录 349

13.2.2 读取目录结构 349

13.2.3 关闭目录指针 350

13.3 文件的上传技术 350

13.3.1 开启文件上传功能 351

13.3.2 全局变量$_files应用 351

13.3.3 将上传文件移动到指定目录 353

13.3.4 文件下载技术 354

13.4 照猫画虎——基本功训练 355

13.4.1 基本功训练1——通过文本文件统计网站

访问量 355

13.4.2 基本功训练2——读取文本文件中存储的

用户注册协议 356

13.4.3 基本功训练3——通过文本文件存储网站

访问记录 356

13.4.4 基本功训练4——验证指定的目录

是否存在 357

13.4.5 基本功训练5——控制上传文件的大小和

格式 358

13.5 情景应用——拓展与实践 359

13.5.1 情景应用1——规范化的文件上传 359

13.5.2 情景应用2——规范化的多文件上传 360

13.5.3 情景应用3——header()函数执行文件

下载 361

13.5.4 情景应用4——文本文件的分页

输出 362

13.5.5 情景应用5——将数据以二进制格式


上传到数据库 364

13.6 自我测试 365

13.7 行动指南 366

13.8 成功可以复制——知识改变命运、科技改变生活李彦宏 367


第3部分 高级篇


第14堂课 面向对象的程序设计 371

视频讲解:180分钟

14.1 一切皆是对象 372

14.1.1 什么是类 372

14.1.2 对象的由来 372

14.1.3 面向对象的特点 373

14.2 类的声明 373

14.2.1 类的定义 373

14.2.2 成员属性 374

14.2.3 成员方法 375

14.3 类的实例化 375

14.3.1 创建对象 375

14.3.2 访问类中成员 376

14.3.3 特殊的访问方法——“$this”和“::” 377

14.3.4 构造方法和析构方法 378

14.4 面向对象的封装特性 379

14.4.1 public(公共成员) 379

14.4.2 private(私有成员) 380

14.4.3 protected(保护成员) 380

14.5 面向对象的继承特性 381

14.5.1 类的继承——extends关键字 381

14.5.2 类的继承——parent::关键字 382

14.5.3 覆盖父类方法 383

14.6 抽象类和接口 384

14.6.1 抽象类 384

14.6.2 接口 385

14.7 面向对象的多态性 387

14.7.1 通过继承实现多态 387

14.7.2 通过接口实现多态 388

14.8 面向对象的关键字 388

14.8.1 final关键字 388

14.8.2 static关键字——声明静态类成员 389

14.8.3 clone关键字——克隆对象 390

14.9 面向对象的魔术方法 391

14.9.1 __set()和__get()方法 391

14.9.2 __isset()和__unset()方法 391

14.9.3 __call()方法 392

14.9.4 __tostring()方法 392

14.9.5 __autoload()方法 393

14.10 照猫画虎——基本功训练 394

14.10.1 基本功训练1——编写一个矩形类 394

14.10.2 基本功训练2——用构造方法初始化 395

14.10.3 基本功训练3——this关键字的用途 395

14.10.4 基本功训练4——方法参数传递 396

14.10.5 基本功训练5——方法的覆盖 397

14.11 情景应用——拓展与实践 397

14.11.1 情景应用1——数据统计类中定义

求数值平方的方法 397

14.11.2 情景应用2——封装一个数据库

连接类 399

14.11.3 情景应用3——封装一个数据库

操作类 400

14.11.4 情景应用4——封装分页类 401

14.11.5 情景应用5——封装特殊字符转义类 402

14.12 自我测试 403

14.13 行动指南 404

14.14 成功可以复制——中国通信设备

行业的领跑者任正非 405

第15堂课 php与xml技术 407

视频讲解:160分钟

15.1 xml的概述 408

15.2 xml语法 408

15.2.1 xml文档结构 408

15.2.2 xml声明 408

15.2.3 处理指令 409

15.2.4 注释 409

15.2.5 xml元素 409

15.2.6 xml属性 410

15.2.7 使用cdata标记 410

15.2.8 xml命名空间 411

15.3 simplexml系列函数操作xml 411

15.3.1 创建simplexml对象 411

15.3.2 遍历所有子元素 412

15.3.3 遍历所有属性 413

15.3.4 访问特定节点元素和属性 414

15.3.5 修改xml数据 414

15.3.6 保存xml文档 415

15.4 rss阅读器 416

15.4.1 rss概述 416

15.4.2 rss 2.0的标准 417

15.4.3 创建支持rss阅读的站点 419

15.5 照猫画虎——基本功训练 422

15.5.1 基本功训练1——动态创建xml

文档 422

15.5.2 基本功训练2——动态读取xml

文档 424

15.5.3 基本功训练3——通过xpath查询xml

中的数据 426

15.5.4 基本功训练4——动态更新xml中的

数据 428

15.5.5 基本功训练5——动态删除xml中的

数据 430

15.6 情景应用——拓展与实践 432

15.6.1 情景应用1——创建rss阅读器的

框架 432

15.6.2 情景应用2——树状导航菜单输出

频道组和频道 434

15.6.3 情景应用3——ajax无刷新读取

订阅信息 435

15.6.4 情景应用4——添加频道组 437

15.6.5 情景应用5——添加频道 438

15.7 自我测试 441

15.8 行动指南 441

15.9 成功可以复制——中国网络游戏产业的

领军人陈天桥 442

第16堂课 pdo数据库抽象层 445

视频讲解:82分钟

16.1 什么是pdo 446

16.1.1 pdo概述 446

16.1.2 pdo特点 446

16.1.3 安装pdo 446

16.2 pdo连接数据库 447

16.2.1 pdo构造函数 447

16.2.2 dsn详解 447

16.3 pdo中执行sql语句 448

16.3.1 exec()方法 448

16.3.2 query()方法 448

16.3.3 预处理语句——prepare()和execute() 448

16.4 pdo中获取结果集 449

16.4.1 fetch()方法 449

16.4.2 fetchall()方法 450

16.4.3 fetchcolumn()方法 451

16.5 pdo中捕获sql语句中的错误 453

16.5.1 使用默认模式——pdo::

errmode_silent 453

16.5.2 使用警告模式——pdo::

errmode_warning 454

16.5.3 使用异常模式——pdo::

errmode_exception 455

16.6 pdo中错误处理 456

16.6.1 errorcode()方法 456

16.6.2 errorinfo()方法 457

16.7 pdo中事务处理 459

16.8 pdo中存储过程 460

16.9 照猫画虎——基本功训练 461

16.9.1 基本功训练1——连接mysql

数据库 461

16.9.2 基本功训练2——通过pdo向数据库中

添加数据 462

16.9.3 基本功训练3——通过pdo浏览

数据库中数据 463

16.9.4 基本功训练4——通过pdo更新

数据库中数据 464

16.9.5 基本功训练5——连接ms sql server

数据库 466

16.10 情景应用——拓展与实践 467

16.10.1 情景应用1——明日书店会员注册 467

16.10.2 情景应用2——明日书店会员登录 468

16.10.3 情景应用3——添加留言信息 469

16.10.4 情景应用4——浏览客户留言 470

16.10.5 情景应用5——查询留言内容 471

16.11 自我测试 472

16.12 行动指南 473

16.13 成功可以复制——中国第一程序员求伯君 474

第17堂课 smarty模板技术 477

视频讲解:162分钟

17.1 smarty模板引擎 478

17.1.1 smarty模板引擎下载 478

17.1.2 smarty模板引擎安装 479

17.1.3 smarty模板引擎配置 479

17.1.4 走进smarty模板引擎 481

17.2 smarty模板设计——静态页处理 482

17.2.1 基本语法(注释、函数和属性) 482

17.2.2 smarty模板设计变量 483

17.2.3 变量调节器 484

17.2.4 内建函数(动态文件、模板文件的包含和

流程控制语句) 485

17.2.5 自定义函数 487

17.2.6 配置文件 487

17.3 smarty程序设计——动态文件

操作 489

17.3.1 smarty_path常量 489

17.3.2 smarty程序设计变量 489

17.3.3 smarty方法 489

17.3.4 smarty缓存 490

17.4 照猫画虎——基本功训练 492

17.4.1 基本功训练1——封装smarty模板的配置

方法 492

17.4.2 基本功训练2——smarty模板中的

页面设计 493

17.4.3 基本功训练3——if语句判断当前

用户权限 494

17.4.4 基本功训练4——smarty模板中日期、

时间的格式化输出 496

17.4.5 基本功训练5——register_object方法注册

模板对象 496

17.5 情景应用——拓展与实践 498

17.5.1 情景应用1——smarty模板中的truncate

方法截取字符串 498

17.5.2 情景应用2——smarty模板制作后台管理

系统主页 499

17.5.3 情景应用3——html_option函数向下拉

列表中添加列表项 501

17.5.4 情景应用4——smarty模板中应用正则

表达式 503

17.5.5 情景应用5——开启网站登录页面的

缓存 505

17.6 自我测试 506

17.7 行动指南 507

17.8 成功可以复制——征途巨人

史玉柱 508

第18堂课 zend framework框架 511

视频讲解:145分钟

18.1 zend framework的mvc介绍 512

18.1.1 zend framework概述 512

18.1.2 zend framework常用组件 512

18.1.3 mvc原理 512

18.2 zend framework的mvc环境

搭建 513

18.2.1 环境配置 513

18.2.2 框架结构 514

18.2.3 创建流程 515

18.2.4 zend framework的编码标准 518

18.3 zend_auth身份认证 519

18.3.1 zend_auth适配器 519

18.3.2 身份持久认证 520

18.3.3 数据库认证 523

18.4 zend_db数据库操作 524

18.4.1 zend_db_adapter数据库操作 524

18.4.2 zend_db_table数据库操作 524

18.4.3 数据表类 526

18.5 zend_file文件控制 530

18.5.1 使用zend_file_transfer_adapter_http

实现post方式文件上传 530

18.5.2 对上传文件的合理性验证 531

18.5.3 为上传增加过滤规则 532

18.6 zend_layout网站布局 533

18.6.1 zend_layout概述 533

18.6.2 zend_layout使用方法 533

18.6.3 zend_layout应用实例 534

18.7 zend_paginator分页 536

18.7.1 zend_paginator简介 536

18.7.2 zend_paginator分页方法 536

18.7.3 zend_paginator分页应用 537

18.8 照猫画虎——基本功训练 540

18.8.1 基本功训练1——通过zend_acl控制

角色和资源的权限 540

18.8.2 基本功训练2——比较缓存日期与

本地日期 542

18.8.3 基本功训练3——应用zend_config配置

站点初始参数 544

18.8.4 基本功训练4——应用zend_form制作

用户注册表单 547

18.8.5 基本功训练5——应用zend_mail

发送邮件 549

18.9 情景应用——拓展与实践 551

18.9.1 情景应用1——应用zend framework

进行用户身份验证 551

18.9.2 情景应用2——应用zend framework

实现查询结果关键字描红 553

18.9.3 情景应用3——应用zend framework

设计新闻发布系统首页 556

18.9.4 情景应用4——应用zend_paginaator

实现数据分页显示 560

18.9.5 情景应用5——应用zend_mail

接收邮件 561

18.10 自我测试 564

18.11 行动指南 564

18.12 成功可以复制——创造互联网搜索

时代拉里·佩奇和谢尔盖·布林 565

第19堂课 php的安全与防护 567

视频讲解:40分钟

19.1 php加密函数 568

19.1.1 使用crypt()函数进行加密 568

19.1.2 使用md5()函数进行加密 569

19.1.3 使用sha1()函数进行加密 570

19.2 php加密扩展库 570

19.2.1 mcrypt扩展库 570

19.2.2 mhash扩展库 571

19.3 php漏洞和防护措施 572

19.3.1 本地文件包含漏洞 572

19.3.2 远程文件包含漏洞 573

19.3.3 文件上传漏洞 573

19.3.4 提交表单漏洞 574

19.3.5 sql注入漏洞 575

19.4 照猫画虎——基本功训练 575

19.4.1 基本功训练1——通过crypt()函数进行

加密 575

19.4.2 基本功训练2——通过md5()函数进行

加密 576

19.4.3 基本功训练3——通过sha1()函数进行

加密 576

19.4.4 基本功训练4——通过mcrypt()函数进行

加密、解密操作 577

19.4.5 基本功训练5——通过mhash()扩展库

进行加密、解密 578

19.5 情景应用——拓展与实践 578

19.5.1 情景应用1——通过crypt()函数对用户

注册密码进行加密 578

19.5.2 情景应用2——通过md5()函数对用户

注册密码进行加密 579

19.5.3 情景应用3——通过自定义函数实现

加密操作 580

19.5.4 情景应用4——隐藏php文件

扩展名 580

19.5.5 情景应用5——禁止用户输入

敏感字符 581

19.6 自我测试 583

19.7 行动指南 584

19.8 成功可以复制——初中站长的创业

故事李兴平 585

第20堂课 php的字符编码 587

视频讲解:79分钟

20.1 字符集和编码 588

20.1.1 iso 8859 字符集 588

20.1.2 gb2312与gbk字符集 588

20.1.3 unicode字符集 589

20.1.4 utf-8编码 589

20.2 php网页的字符编码 590

20.2.1 设置编码格式 590

20.2.2 转换编码格式 591

20.2.3 检测字符串的编码 592

20.3 php开发中的乱码问题 593

20.3.1 解决页面中的乱码问题 593

20.3.2 数据库中的字符集编码问题 594

20.3.3 避免截取中文字符串时出现乱码 595

20.4 照猫画虎——基本功训练 596

20.4.1 基本功训练1——dreamweaver中编码

格式的选择 596

20.4.2 基本功训练2——创建gb2312编码

格式的网页 597

20.4.3 基本功训练3——通过iconv()函数实现

编码格式的转换 598

20.4.4 基本功训练4——通过header()函数

设置php脚本文件的编码格式 599

20.4.5 基本功训练5——设置mysql数据库中

数据的编码格式 599

20.5 情景应用——拓展与实践 601

20.5.1 情景应用1——采用utf-8编码设计论坛

网页 601

20.5.2 情景应用2——以utf8编码输出论坛中

数据 602

20.5.3 情景应用3——论坛中控制帖子标题

输出的长度 603

20.5.4 情景应用4——完成论坛中帖子的

发布 605

20.5.5 情景应用5——对输出的数据进行编码

格式转换 606

20.6 自我测试 607

20.7 行动指南 608

20.8 成功可以复制——暴雪公司的

领航者迈克·莫汉 609

第21堂课 程序调试与错误处理 611

视频讲解:112分钟

21.1 基本调试策略 612

21.2 常见错误分析 612

21.2.1 语法错误 613

21.2.2 定义错误 615

21.2.3 逻辑错误 616

21.2.4 运行错误 616

21.2.5 环境错误 618

21.3 php.ini中的错误处理机制 619

21.3.1 控制错误显示以及显示方式 619

21.3.2 控制错误的级别 619

21.4 程序调试方法 620

21.4.1 应用die语句调试 620

21.4.2 应用mysql_error()语句输出

错误信息 621

21.5 错误处理技巧 622

21.5.1 隐藏错误 622

21.5.2 自定义错误页面 622

21.6 照猫画虎——基本功训练 623

21.6.1 基本功训练1——解决程序的语法

错误 623

21.6.2 基本功训练2——计算商品的折扣

价格 624

21.6.3 基本功训练3——连接不存在的

数据库 624

21.6.4 基本功训练4——运行缺少第三方组件

的程序 625

21.6.5 基本功训练5——通过readfile ()函数


访问远程文件 626

21.7 情景应用——拓展与实践 626

21.7.1 情景应用1——分析、解决php与

mysql连接错误 626

21.7.2 情景应用2——解决数据库乱码

问题 628

21.7.3 情景应用3——封装异常处理类 629

21.7.4 情景应用4——使用错误处理器记录

日志 630

21.7.5 情景应用5——通过phpmyadmin调试

sql语句中的错误 631

21.8 自我测试 632

21.9 行动指南 632

21.10 成功可以复制——java技术

之父james gosling 633
第4部分 实战篇


第22堂课 应用smarty模板开发电子商务

网站 637

视频讲解:65分钟

22.1 开发背景 638

22.2 需求分析 638

22.3 系统分析 638

22.3.1 系统目标 638

22.3.2 系统功能结构 639

22.3.3 开发环境 639

22.3.4 文件夹组织结构 640

22.4 数据库设计 641

22.4.1 数据库分析 641

22.4.2 创建数据库和数据表 642

22.5 公共文件设计 643

22.5.1 数据库连接、管理和分页类文件 643

22.5.2 smarty模板配置类文件 646

22.5.3 执行类的实例化文件 646

22.6 前台首页设计 646

22.6.1 前台首页概述 646

22.6.2 前台首页技术分析 647

22.6.3 前台首页实现过程 647

22.7 登录模块设计 649

22.7.1 登录模块概述 649

22.7.2 登录模块技术分析 650

22.7.3 用户注册 651

22.7.4 用户登录 653

22.7.5 找回密码 655

22.8 会员信息模块设计 660

22.8.1 会员信息模块概述 660

22.8.2 会员信息模块技术分析 660

22.8.3 会员中心 661

22.8.4 安全退出 664

22.9 商品展示模块设计 665

22.9.1 商品展示模块概述 665

22.9.2 商品展示模块技术分析 665

22.9.3 商品展示模块的实现过程 666

22.10 购物车模块设计 669

22.10.1 购物车模块概述 669

22.10.2 购物车模块技术分析 669

22.10.3 购物车展示 671

22.10.4 更改商品数量 673

22.10.5 删除商品 674

22.10.6 保存购物车 676

22.11 收银台模块设计 678

22.11.1 收银台模块概述 678

22.11.2 收银台模块技术分析 678

22.11.3 显示订单 678

22.11.4 填写订单 679

22.11.5 处理订单 679

22.12 后台首页设计 681

22.12.1 后台首页概述 681

22.12.2 后台首页技术分析 681

22.12.3 后台首页实现过程 683

22.13 开发技巧与难点分析 684

22.13.1 解决ajax的乱码问题 684

22.13.2 使用js脚本获取、输出标签内容 685

22.13.3 禁用页面缓存 685

22.13.4 在新窗口中使用session 685

22.13.5 判断上传文件格式 685

22.13.6 设置服务器的时间 686

22.14 开发总结 686

第23堂课 zend framework框架开发明日

搜索引擎 687

视频讲解:80分钟

23.1 明日搜索引擎概述 688

23.2 开发背景 688

23.3 需求分析 688

23.4 系统分析 688

23.4.1 功能结构 689

23.4.2 开发环境 689

23.5 数据库设计 689

23.5.1 数据库分析 690

23.5.2 数据库概念设计 690

23.5.3 创建数据库及数据表 691

23.6 技术攻关 692

23.6.1 类似google搜索引擎的搜索条 692

23.6.2 使用空格分隔多关键字 696

23.6.3 关键字描红 699

23.6.4 制作在线编辑器 701

23.7 mvc框架结构搭建 703

23.8 首页设计 704

23.8.1 首页概述 704

23.8.2 首页技术分析 705

23.8.3 首页的实现过程 705

23.9 用户模块设计 708

23.9.1 用户模块概述 708

23.9.2 用户模块技术分析 708

23.9.3 用户注册的实现过程 710

23.9.4 用户登录的实现过程 712

23.10 发表问题模块设计 714

23.10.1 发表问题模块概述 714

23.10.2 发表问题模块技术分析 715

23.10.3 发表问题模块实现过程 716

23.11 回复问题模块设计 718

23.11.1 回复问题模块概述 718

23.11.2 回复问题模块技术分析 719

23.11.3 回复问题模块实现过程 719

23.12 程序调试与错误处理 720

23.12.1 项目开发过程中常见错误及解决方法 721

23.12.2 自定义错误页面 721

23.13 开发总结 722

特别提醒:

亲爱的读者朋友,由于近期纸张价格和印制成本大幅上涨,为不增加读者朋友的负担,又不减少书的内容,本书以下章节内容不得不放在配书光盘中,由此给您带来了不便,在此深表歉意。

第24堂课 学校图书馆管理系统 723

视频讲解:150分钟

(本章内容在配书光盘中)

24.1 开发背景 724

24.2 需求分析 724

24.3 系统设计 724

24.3.1 系统目标 724

24.3.2 系统功能结构 725

24.3.3 系统流程图 725

24.3.4 开发环境 725

24.3.5 文件夹组织结构 726

24.4 数据库设计 727

24.4.1 数据库分析 727

24.4.2 数据库概念设计 727

24.4.3 创建数据库及数据表 728

24.5 首页设计 729

24.5.1 首页概述 729

24.5.2 首页技术分析 730

24.5.3 首页的实现过程 730

24.6 管理员模块设计 731

24.6.1 管理员模块概述 731

24.6.2 管理员模块技术分析 732

24.6.3 系统登录的实现过程 732

24.6.4 查看管理员的实现过程 734

24.6.5 添加管理员的实现过程 735

24.6.6 设置管理员权限的实现过程 736

24.6.7 删除管理员的实现过程 738

24.7 图书档案管理模块设计 738

24.7.1 图书档案管理模块概述 738

24.7.2 图书档案管理模块技术分析 739

24.7.3 查看图书信息列表的实现过程 739

24.7.4 添加图书信息的实现过程 740

24.7.5 修改图书信息的实现过程 742

24.7.6 删除图书信息的实现过程 743

24.8 图书借还模块设计 743

24.8.1 图书借还模块概述 743

24.8.2 图书借还模块技术分析 744

24.8.3 图书借阅的实现过程 744

24.8.4 图书续借的实现过程 747

24.8.5 图书归还的实现过程 748

24.8.6 图书借阅查询的实现过程 749

24.9 开发技巧与难点分析 752

24.9.1 如何自动计算图书归还日期 752

24.9.2 如何对图书借阅信息进行统计排行 752

24.10 开发总结 753

附录a php编码规则 755

(本章内容在配书光盘中)

a.1 php file文件格式 755

a.1.1 常规 755

a.1.2 缩进 755

a.1.3 行的最大长度 755

a.1.4 行结束标志 755

a.1.5 引号 755

a.1.6 运算符、小括号、空格和关键词 756

a.2 命名约定 757

a.2.1 类 757

a.2.2 接口 757

a.2.3 文件名 757

a.2.4 函数和方法 758

a.2.5 变量 758

a.2.6 常量 759

a.2.7 数据库表和字段 759

a.3 编码风格 759

a.3.1 php代码划分(demarcation) 759

a.3.2 字符串 759

a.3.3 数组 760

a.3.4 类 760

a.3.5 函数和方法 761

a.3.6 控制语句 762

a.3.7 数据库 763

a.3.8 注释文档 764


已确认勘误

次印刷

页码 勘误内容 提交人 修订印次

学通PHP的24堂课
    • 名称
    • 类型
    • 大小

    光盘服务联系方式: 020-38250260    客服QQ:4006604884

    意见反馈

    14:15

    关闭

    云图客服:

    尊敬的用户,您好!您有任何提议或者建议都可以在此提出来,我们会谦虚地接受任何意见。

    或者您是想咨询:

    用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问

    Video Player
    ×
    Audio Player
    ×
    pdf Player
    ×
    Current View

    看过该图书的还喜欢

    some pictures

    解忧杂货店

    东野圭吾 (作者), 李盈春 (译者)

    亲爱的云图用户,
    光盘内的文件都可以直接点击浏览哦

    无需下载,在线查阅资料!

    loading icon