图书介绍

学通PHP的24堂课2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

学通PHP的24堂课
  • 潘凯华,刘欣,杨明等编著 著
  • 出版社: 北京:清华大学出版社
  • ISBN:9787302255420
  • 出版时间:2011
  • 标注页数:722页
  • 文件大小:220MB
  • 文件页数:744页
  • 主题词:PHP语言-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

学通PHP的24堂课PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1部分 基础篇3

第1堂课 PHP概述3

1.1怎样学好PHP4

1.1.1什么是PHP4

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服务器的端口号为8221

1.6.5情景应用5——Apache端口号修改后运行第一个PHP程序21

1.7自我测试22

1.8行动指南23

1.9成功可以复制——PHP开山鼻祖Rasmus Lerdorf24

第2堂课 PHP基础25

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

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

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

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

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

7.1 MySQL概述184

7.1.1 MySQL的特点184

7.1.2 SQL和MySQL184

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_mrbook208

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

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部分 提高篇253

第9堂课 Cookie与会话控制253

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创建Cookie260

9.3.2访问Cookie261

9.3.3删除Cookie261

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

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

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

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

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部分 高级篇371

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

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_toStfng()方法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

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系列函数操作XML411

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

16.1什么是PDO446

16.1.1 PDO概述446

16.1.2 PDO特点446

16.1.3安装PDO446

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_SILENT453

16.5.2使用警告模式——PDO::ERRMODE_WARNING454

16.5.3使用异常模式——PDO::ERRMODE_EXCEPTION455

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

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

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

19.1 PHP加密函数568

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

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

19.1.3使用shal()函数进行加密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

20.1字符集和编码588

20.1.1 ISO8859字符集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

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 Gosling633

第4部分 实战篇637

第22堂课 应用Smarty模板开发电子商务网站637

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在新窗口中使用session685

22.13.5判断上传文件格式685

22.13.6设置服务器的时间686

22.14开发总结686

第23堂课 Zend Framework框架开发明日搜索引擎687

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

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

热门推荐