《PHP 5.3入门经典》PDF下载

  • 购买积分:19 如何计算积分?
  • 作  者:(英)道尔著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2010
  • ISBN:9787302236962
  • 页数:698 页
图书介绍:本书简明扼要地介绍了PHP语言,指导读者用PHP语言编写卓越Web程序,分析PHP程序与Web服务器和HTML等技术的交互方式。

第Ⅰ部分 PHP的安装与运行第1章 PHP简介 3

1.1 PHP的含义 3

1.2 使用PHP的原因 4

1.3 PHP的演变过程 7

1.4 PHP 5.3新增的内容 7

1.4.1 名称空间 7

1.4.2 goto运算符 8

1.4.3 nowdoc语法 8

1.4.4 三目运算符的简洁形式 8

1.4.5 高级变化 8

1.5 小结 9

第2章 第一个PHP脚本 11

2.1 安装PHP 11

2.1.1 在Ubuntu Linux系统上安装PHP 12

2.1.2 在Windows系统中安装PHP 14

2.1.3 在Mac OS X系统中安装PHP 15

2.1.4 测试安装结果 16

2.1.5 时区设置 18

2.2 运行PHP的其他方法 20

2.2.1 在其他Web服务器上运行PHP 20

2.2.2 自己编译PHP软件 20

2.2.3 远程运行PHP 21

2.3 创建第一个脚本程序 21

2.3.1 在HTML中嵌入PHP脚本 22

2.3.2 增强脚本的功能 25

2.3.3 使用注释增加代码的可读性 26

2.4 小结 27

2.5 习题 27

第Ⅱ部分 PHP语言基础第3章 PHP语言基础 31

3.1 在PHP中使用变量 31

3.1.1 命名变量 32

3.1.2 创建变量 32

3.2 数据类型 33

3.2.1 松散类型 33

3.2.2 测试变量的类型 34

3.2.3 改变变量的数据类型 35

3.2.4 强制类型转换 36

3.3 运算符与表达式 37

3.3.1 运算符类型 37

3.3.2 运算符的优先级 43

3.4 常量 44

3.5 小结 46

3.6 习题 46

第4章 选择与循环 47

4.1 选择语句 47

4.1.1 用if编写简单的选择语句 48

4.1.2 用else语句提供备选方案 49

4.1.3 用switch语句对表达式进行多次判断 50

4.1.4 使用三目运算符的简约编码 52

4.2 用循环结构完成重复操作 54

4.2.1 用while语句实现简单的循环 54

4.2.2 do...while循环 55

4.2.3 使用for语句的简洁循环结构 56

4.2.4 用break语句退出循环 59

4.2.5 用continue语句跳过本次循环 59

4.2.6 创建嵌套循环 60

4.3 在HTML中结合选择语句和循环语句 64

4.4 小结 66

4.5 习题 66

第5章 字符串 67

5.1 创建和访问字符串 67

5.1.1 在字符串中插入比较复杂的表达式 69

5.1.2 自定义分隔符 69

5.1.3 创建字符串的其他方法 71

5.1.4 求字符串的长度 71

5.1.5 访问字符串中的单个字符 71

5.2 搜索字符串 72

5.2.1 用strstr()函数搜索字符串 72

5.2.2 用strpos()和strrpos()函数定位字符串位置 73

5.2.3 用substr_count()函数确定字符串出现的次数 74

5.2.4 用strpbrk()函数搜索字符集 74

5.3 在字符串中进行字符替换 75

5.3.1 用str_replace()函数替换全部搜索字符串 75

5.3.2 用substr_replace()替换字符串的一部分内容 76

5.3.3 用strtr()函数变换字符 80

5.4 大小写转换 81

5.5 格式化字符串 82

5.5.1 通用的格式化函数——printf()和sprintf() 82

5.5.2 删除字符串中空白符的函数:trim()、ltrim()和rtrim() 87

5.5.3 用str_pad()函数填充字符串 88

5.5.4 用wordwrap()函数实现自动换行 89

5.5.5 用number_format()函数格式化数值 91

5.6 小结 91

5.7 习题 92

第6章 数组 93

6.1 数组概述 93

6.2 创建数组 94

6.3 访问数组的元素 95

6.3.1 改变元素内容 95

6.3.2 用print_r()函数输出整个数组 97

6.3.3 用array_slice()函数读取数组中连续几个元素 98

6.3.4 统计数组中元素的个数 99

6.3.5 逐个访问数组的元素 100

6.4 用foreach()循环访问数组 104

6.4.1 用foreach循环访问数组的每个值 104

6.4.2 用foreach循环访问数组的键和值 104

6.4.3 用foreach循环修改数组值 105

6.5 多维数组 106

6.5.1 创建多维数组 107

6.5.2 访问多维数组的元素 108

6.5.3 多维数组的循环访问 109

6.6 数组的操作 110

6.6.1 数组排序 111

6.6.2 添加和删除数组元素 117

6.6.3 数组的合并 122

6.6.4 数组与字符串之间的转换 124

6.6.5 把数组转换为变量列表 125

6.7 小结 126

6.8 习题 126

第7章 函数 129

7.1 函数的定义 129

7.2 函数的作用 129

7.3 调用函数 130

7.4 变量函数 131

7.5 用户自定义函数 132

7.5.1 函数的参数 133

7.5.2 可选形参和形参的默认值 134

7.5.3 函数的返回值 135

7.5.4 变量的作用范围 137

7.5.5 创建匿名函数 141

7.6 引用 144

7.6.1 将引用传递给自定义函数 145

7.6.2 从自定义函数中返回引用 146

7.7 编写递归函数 147

7.8 小结 149

7.9 习题 150

第8章 对象 151

8.1 面向对象程序设计的概念 151

8.2 面向对象程序设计的优点 152

8.3 面向对象程序设计的基础 153

8.3.1 类 153

8.3.2 对象 153

8.3.3 属性 153

8.3.4 方法 153

8.4 在PHP中创建类和对象 154

8.5 创建和使用属性 155

8.5.1 属性的可见性 155

8.5.2 声明属性 155

8.5.3 访问属性 155

8.5.4 静态属性 157

8.5.5 类常量 158

8.6 方法 159

8.6.1 方法的可见性 159

8.6.2 方法的创建 159

8.6.3 方法的调用 159

8.6.4 方法的参数和返回值 160

8.6.5 在方法中访问对象的属性 160

8.6.6 静态方法 163

8.6.7 用类型提示检查方法的参数 165

8.6.8 用封装实现独立性 166

8.7 用_get()、_set()和_call()重载对象 167

8.7.1 用_get()和_set()方法重载属性访问 168

8.7.2 用_call()重载方法调用 171

8.7.3 其他重载方法 174

8.8 用继承扩展对象的功能 175

8.8.1 重载父类的方法 179

8.8.2 保留父类的功能 181

8.8.3 用final类和方法阻止继承和重载 181

8.8.4 抽象类和抽象方法 182

8.8.5 接口 186

8.9 构造方法和析构方法 190

8.9.1 用构造方法建立新对象 190

8.9.2 用析构方法撤销对象 191

8.10 自动加载类文件 193

8.11 将对象存储为字符串 194

8.12 判断一个对象的类 196

8.13 小结 197

8.14 习题 198

第Ⅲ部分 PHP的实际应用第9章 用PHP处理HTML表单 201

9.1 HTML表单的运行过程 201

9.2 用PHP截获表单数据 208

9.2.1 表单数据的安全性 212

9.2.2 处理空表单字段 212

9.3 多值字段的处理 213

9.4 用PHP生成Web表单 219

9.5 在表单中存储PHP变量 225

9.6 创建文件上传表单 232

9.6.1 访问上传文件的信息 232

9.6.2 限制上传文件的大小 233

9.6.3 存储和使用上传文件 234

9.7 表单提交后的重定向 238

9.8 小结 240

9.9 习题 240

第10章 用查询字符串、cookie和会话保存页面状态 241

10.1 用查询字符串保存页面状态 242

10.1.1 建立查询字符串 242

10.1.2 访问查询字符串中的数据 244

10.2 用cookie保存页面状态 247

10.2.1 cookie的组成 248

10.2.2 在PHP中设置cookie 249

10.2.3 在脚本中访问cookie 250

10.2.4 删除cookie 251

10.3 用PHP会话存储数据 255

10.3.1 创建会话 256

10.3.2 读取和写入会话数据 256

10.3.3 撤销会话 261

10.3.4 通过查询字符串传递会话ID 262

10.3.5 改变会话的行为 263

10.4 小结 267

10.5 习题 268

第11章 文件与目录 269

11.1 文件与目录基础 269

11.2 获取文件的信息 270

11.2.1 文件的时间属性 270

11.2.2 从路径获取文件名 271

11.3 打开和关闭文件 271

11.3.1 用fopen()打开文件 272

11.3.2 用fclose()关闭文件 273

11.4 文件的读写 274

11.4.1 读写字符串 274

11.4.2 文件末尾的测试 277

11.4.3 一次读取一行内容 278

11.4.4 读取CSV文件 279

11.4.5 读取和写入整个文件 280

11.4.6 随机存取文件数据 282

11.5 文件的权限 283

11.5.1 改变文件的权限 283

11.5.2 检查文件权限 285

11.6 文件的复制、重命名和删除 285

11.7 目录 286

11.7.1 其他目录函数 288

11.7.2 目录对象 290

11.7.3 区分文件与目录 291

11.8 设计一个文本编辑器 293

11.8.1 创建文本编辑器的脚本程序 294

11.8.2 测试文本编辑器 296

11.8.3 文本编辑器示例说明 297

11.9 小结 302

11.10 习题 302

第12章 数据库和SQL基础 303

12.1 决定用什么方法存储数据 303

12.1.1 数据库的结构 304

12.1.2 数据库模型 305

12.1.3 数据库系统的选择 305

12.2 关系数据库基础 306

12.2.1 规范化 307

12.2.2 用SQL操作数据库 308

12.3 设置MySQL 313

12.3.1 启动MySQL服务器 313

12.3.2 设置MySQL根用户口令 314

12.4 MySQL的简单使用 317

12.4.1 新建一个数据库 317

12.4.2 创建一个表 318

12.4.3 给表添加数据 319

12.4.4 从表中读取数据 320

12.4.5 更新表中的数据 321

12.4.6 删除表中的数据 321

12.4.7 删除表和数据库 322

12.5 在PHP脚本中连接MySQL 323

12.5.1 建立连接 323

12.5.2 错误处理 324

12.5.3 读取数据 325

12.6 小结 328

12.7 习题 328

第13章 使用PHP检索MySQL数据库中的数据 329

13.1 建立读书俱乐部数据库 329

13.1.1 BINARY属性和排序规则 331

13.1.2 唯一性约束 331

13.1.3 枚举数据类型 332

13.1.4 时间戳数据类型 332

13.2 用SELECT语句检索数据 333

13.2.1 限制返回的行数 333

13.2.2 排序结果 334

13.2.3 在查询中使用模式匹配 336

13.2.4 汇总数据 337

13.2.5 删除重复记录 338

13.2.6 对结果进行分组 339

13.2.7 从多个表中读取数据 340

13.2.8 使用别名 342

13.2.9 MySQL中其他有用的运算符和函数 343

13.3 创建一个会员记录查看器 345

13.3.1 创建config.php文件 346

13.3.2 创建common.inc.php文件 347

13.3.3 创建DataObject类文件 348

13.3.4 创建Member类 350

13.3.5 创建LogEntry类 354

13.3.6 创建view_members.php脚本 355

13.3.7 创建view_member.php脚本 358

13.3.8 测试应用程序 360

13.4 小结 361

13.5 习题 362

第14章 使用PHP操纵MySQL数据 363

14.1 插入记录 363

14.2 更新记录 365

14.3 删除记录 366

14.4 创建一个会员注册应用程序 367

14.4.1 增加一些通用代码 367

14.4.2 增加Member类的功能 369

14.4.3 创建注册脚本 371

14.4.4 测试 376

14.5 为会员建立论坛 377

14.5.1 给Member类增加验证方法 377

14.5.2 通过增加LogEntry类的功能来保存页面访问记录 378

14.5.3 添加其他的通用代码 379

14.5.4 编写登录页面脚本 380

14.5.5 创建注销函数 382

14.5.6 为会员论坛创建页面 383

14.5.7 测试会员论坛 385

14.6 创建一个会员管理应用程序 386

14.6.1 给Member类添加更新和删除方法 386

14.6.2 给LogEntry类添加一个删除方法 388

14.6.3 修改view_members.php脚本 388

14.6.4 创建view_member.php脚本 389

14.6.5 测试会员管理程序 394

14.7 小结 395

14.8 习题 396

第15章 使用PEAR简化工作 397

15.1 安装PEAR程序包 398

15.1.1 测试Ubuntu系统上的PEAR程序包管理器 398

15.1.2 用Mac OS X和MAMP测试PEAR 399

15.1.3 在Windows系统上用WampServer安装和测试PEAR 400

15.1.4 程序包的安装 402

15.1.5 附属程序包的安装 403

15.1.6 程序包的卸载 403

15.2 PEAR程序包的使用 403

15.3 用HTML_Table程序包创建HTML表格 405

15.4 用HTML_QuickForm快速建立Web表单 409

15.4.1 HTML_QuickForm的安装 409

15.4.2 HTML_QuickForm的使用 410

15.4.3 应用验证规则 414

15.5 小结 422

15.6 习题 422

第16章 PHP及其他应用程序 423

16.1 日期和时间的处理 423

16.1.1 时间戳 424

16.1.2 获取当前日期和时间 424

16.1.3 创建自己的时间戳 424

16.1.4 从时间戳中读取日期和时间值 427

16.1.5 格式化日期字符串 429

16.1.6 检查日期值 431

16.1.7 毫秒的使用 431

16.1.8 PHP未来的日期时间处理函数——DateTime 437

16.2 HTTP的使用 438

16.2.1 HTTP请求 438

16.2.2 HTTP响应 440

16.2.3 修改HTTP响应方式 441

16.3 从Web服务器获取信息 443

16.4 发送电子邮件 445

16.4.1 指定发送者的地址和添加邮件头信息 446

16.4.2 控制邮件回复地址 447

16.4.3 发送HTML邮件 448

16.5 小结 453

16.6 习题 454

第17章 用PHP语言生成图像 455

17.1 计算机图形基础 455

17.1.1 色彩原理 455

17.1.2 坐标系 456

17.1.3 图像类型 456

17.2 创建图像 457

17.2.1 新建一个图像 457

17.2.2 颜色分配 458

17.2.3 输出图像 458

17.2.4 在图像上进行绘制 460

17.3 处理图像 466

17.3.1 打开一个已有图像 467

17.3.2 插入水印 468

17.3.3 创建缩略图 472

17.4 在图像中插入文本 474

17.4.1 添加标准化文本 474

17.4.2 使用TrueType字体 476

17.5 小结 479

17.6 习题 479

第18章 使用正则表达式来匹配字符串 481

18.1 正则表达式的含义 482

18.2 PHP中的模式匹配 482

18.3 正则表达式的语法 483

18.3.1 匹配字面字符 484

18.3.2 用字符类匹配字符类型 485

18.3.3 多次匹配同一字符 486

18.3.4 贪婪匹配法和非贪婪匹配法 487

18.3.5 用子模式分组模式 487

18.3.6 引用前面的子模式匹配串 488

18.3.7 匹配多个模式 489

18.3.8 用锚点在指定的位置进行匹配 489

18.4 用preg_match_all()函数实现多次匹配 491

18.5 用preg_grep()函数搜索数组 496

18.6 文本替换 497

18.6.1 用preg_replace()替换文本 497

18.6.2 用回调函数实现文本替换 499

18.7 用模式修饰符改变匹配方式 500

18.8 用正则表达式拆分字符串 502

18.9 小结 509

18.10 习题 510

第19章 使用XML 511

19.1 XML的含义 512

19.2 XML文档的结构 513

19.2.1 XML文档的主要组成 513

19.2.2 XML语法规则 515

19.2.3 使用XML元素和属性 515

19.2.4 有效的XML文档:DTD和XSD 516

19.3 用PHP读取XML文档 519

19.3.1 XML Parser的工作过程 519

19.3.2 新建一个解析器 520

19.3.3 创建事件处理程序 520

19.3.4 解析XML文档 521

19.3.5 处理解析错误 521

19.4 用PHP语句写入和操作XML文档 526

19.4.1 DOM基础 526

19.4.2 使用DOM创建XML文档 531

19.4.3 使用DOM操作XML文档 536

19.5 用SimpleXML程序包简化XML操作 542

19.5.1 读取XML文档 543

19.5.2 创建XML文档 545

19.5.3 SimpleXML与DOM对象之间的转换 547

19.6 使用XSL和XSLT 548

19.7 小结 551

19.8 习题 551

第20章 编写高质量的代码 553

20.1 编写模块化代码 553

20.1.1 包含文件 554

20.1.2 文件只包含一次 555

20.1.3 使用包含路径 556

20.1.4 动态包含 558

20.1.5 使用名称空间避免冲突 558

20.2 一致性的编码标准 562

20.3 为代码编写文档 564

20.3.1 编写高质量的注释 564

20.3.2 使用phpDocumentor生成外部文档 565

20.4 输入检查和输出编码 572

20.4.1 输入检查 573

20.4.2 输出编码 575

20.5 错误处理 575

20.5.1 错误级别 576

20.5.2 触发错误 576

20.5.3 控制错误消息发送的目的地 578

20.5.4 记录自己的错误消息 578

20.5.5 在脚本中处理错误 579

20.5.6 控制错误输出报告 581

20.5.7 用异常对象处理错误 582

20.6 应用逻辑与表示逻辑相互独立 590

20.7 用PHPUnit使代码测试自动化 596

20.8 小结 600

20.9 习题 601

附录A 习题答案 603

附录B 配置PHP 645

附录C 可取代MySQL的数据库 683

附录D 在命令行模式中使用PHP 691