《PHP与MySQL 5程序设计 第2版》PDF下载

  • 购买积分:18 如何计算积分?
  • 作  者:(美)W. Jason Gilmore著;朱涛江等译
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2007
  • ISBN:7115155097
  • 页数:634 页
图书介绍:本书介绍PHP 5和MySQL5的最新特征。

第1章 PHP概述 1

1.1 历史 1

1.1.1 PHP 4 2

1.2.1 实用性 3

1.2 PHP的一般特性 3

1.1.2 PHP 5 3

1.2.3 可选择性 4

1.2.2 强大功能 4

1.3 小结 5

1.2.4 成本 5

2.1.1 获得发行包 6

2.1 安装 6

第2章 安装配置Apache和PHP 6

2.1.2 安装过程 7

2.1.3 测试安装 11

2.1.5 定制Windows构建 12

2.1.4 定制UNIX构建 12

2.2 配置 13

2.1.7 查看并下载文档 13

2.1.6 常见错误 13

2.2.1 管理PHP的配置指令 14

2.2.2 PHP的配置指令 15

2.3 小结 29

3.1.1 默认语法 30

3.1 界定PHP代码 30

第3章 PHP基础 30

3.1.3 脚本 31

3.1.2 短标记 31

3.2.2 Shell语法 32

3.2.1 单行C++语法 32

3.1.4 ASP风格 32

3.1.5 嵌入多个代码块 32

3.2 注释 32

3.3.1 print() 33

3.3 输出 33

3.2.3 多行C语法 33

3.3.3 printf() 34

3.3.2 echo() 34

3.4.1 标量数据类型 35

3.4 数据类型 35

3.3.4 sprintf() 35

3.4.2 复合数据类型 37

3.4.4 类型强制转换 38

3.4.3 特殊数据类型 38

3.4.5 类型自动转换 39

3.4.7 类型标识符函数 40

3.4.6 与类型有关的函数 40

3.6 变量 41

3.5 标识符 41

3.6.1 变量声明 42

3.6.2 变量作用域 43

3.6.3 PHP的超级全局变量 45

3.6.4 变量的变量 48

3.8 表达式 49

3.7 常量 49

3.8.2 操作符 50

3.8.1 操作数 50

3.9 字符串插入 54

3.9.2 单引号 55

3.9.1 双引号 55

3.10 控制结构 56

3.9.3 Heredoc 56

3.10.2 条件语句 57

3.10.1 执行控制语句 57

3.10.3 循环语句 59

3.10.4 文件包含语句 63

3.11 小结 65

3.10.5 require_once() 65

4.2 创建函数 66

4.1 调用函数 66

第4章 函数 66

4.2.1 按值传递参数 67

4.2.4 可选参数 68

4.2.3 默认参数值 68

4.2.2 按引用传递参数 68

4.2.5 从函数返回值 69

4.2.7 递归函数 70

4.2.6 嵌套函数 70

4.2.8 变量函数 72

4.3 函数库 73

4.4 小结 74

5.1 什么是数组 75

第5章 数组 75

5.2 输出数组 76

5.3 创建数组 77

5.5 增加和删除数组元素 79

5.4 测试数组 79

5.6 定位数组元素 81

5.7 遍历数组 82

5.8 确定数组大小和唯一性 85

5.9 数组排序 86

5.10 合并、拆分、接合和分解数组 91

5.11 其他有用的数组函数 95

5.12 小结 96

6.1.1 封装 97

6.1 OOP的好处 97

第6章 面向对象的PHP 97

6.1.3 多态 98

6.1.2 继承 98

6.2.2 对象 99

6.2.1 类 99

6.2 关键的OOP概念 99

6.2.3 字段 100

6.2.4 属性 102

6.2.5 常量 104

6.2.6 方法 105

6.4.1 构造函数 108

6.4 构造函数和析构函数 108

6.3 类型提示 108

6.4.2 析构函数 110

6.5 静态类成员 111

6.7 辅助函数 112

6.6 instanceof关键字 112

6.9 小结 114

6.8 自动加载对象 114

7.1 PHP不支持的高级OOP特性 115

第7章 高级OOP特性 115

7.2.1 克隆示例 116

7.2 对象克隆 116

7.2.2 _clone()方法 117

7.3.1 类继承 118

7.3 继承 118

7.3.2 继承和构造函数 120

7.4 接口 121

7.4.1 实现一个接口 122

7.4.2 实现多个接口 123

7.6 反射 124

7.5 抽象类 124

7.6.1 编写ReflectionClass类 125

7.6.2 编写ReflectionMethod类 127

7.6.3 编写ReflectionParameter类 128

7.6.4 编写ReflectionProperty类 129

7.7 小结 130

7.6.5 反射的其他用途 130

8.1 配置指令 131

第8章 错误和异常处理 131

8.2 错误日志 134

8.3 异常处理 135

8.3.1 为什么异常处理很方便 136

8.3.2 PHP的异常处理实现 137

8.4 小结 140

9.1 复杂(大括号)偏移语法 141

第9章 字符串和正则表达式 141

9.2.1 正则表达式语法(POSIX) 142

9.2 正则表达式 142

9.2.2 PHP的正则表达式函数(POSIX扩展) 144

9.2.3 正则表达式语法(Perl风格) 146

9.3 其他字符串函数 151

9.3.2 比较两个字符串 152

9.3.1 确定字符串长度 152

9.3.3 处理字符串大小写 154

9.3.4 字符串与HTML相互转换 155

9.3.5 正则表达式函数的替代函数 159

9.3.6 填充和剔除字符串 164

9.3.7 字符和单词计数 165

9.4.1 安装Validate_US 167

9.4 使用PEAR:Validate_US 167

9.5 小结 168

9.4.2 使用Validate_US 168

10.1.1 解析目录路径 169

10.1 了解文件和目录 169

第10章 处理文件和操作系统 169

10.1.2 文件类型和链接 171

10.1.3 计算文件、目录和磁盘大小 173

10.1.4 访问和修改时间 175

10.2 文件所有权和权限 176

10.3.3 文件末尾 178

10.3.2 换行 178

10.3 文件I/O 178

10.3.1 资源的概念 178

10.3.4 打开和关闭文件 179

10.3.5 读取文件 180

10.3.7 写入文件 184

10.3.6 移动文件指针 184

10.3.8 读取目录内容 185

10.4 执行Shell命令 186

10.5.1 清理输入 187

10.5 系统级程序执行 187

10.5.2 PHP的程序执行函数 188

10.6 小结 190

11.1 流行的PEAR包 191

第11章 PEAR 191

11.2.1 安装PEAR 193

11.2 安装和更新PEAR 193

11.3 使用PEAR包管理器 194

11.2.3 更新PEAR 194

11.2.2 PEAR和ISP公司 194

11.3.2 了解安装包的更多信息 195

11.3.1 查看安装的包 195

11.3.3 安装PEAR包 196

11.3.4 使用PEAR包 197

11.3.6 卸载PEAR包 198

11.3.5 升级PEAR包 198

11.4 小结 199

11.3.7 降级PEAR包 199

12.2 PHP的日期和时间库 200

12.1 UNIX时间戳 200

第12章 日期和时间 200

12.3.1 显示本地化的日期和时间 206

12.3 日期函数 206

12.3.4 计算当前日期后X天的日期 209

12.3.3 确定当前月份中的天数 209

12.3.2 显示网页的最新修改日期 209

12.3.5 创建日历 210

12.4.2 Date构造函数 213

12.4.1 Date基础 213

12.4 PHP 5.1 213

12.4.3 访问方法和修改方法 214

12.4.5 处理方法 216

12.4.4 验证函数 216

12.5 小结 222

13.1 PHP和Web表单 223

第13章 表单和导航提示 223

13.1.1 简单示例 224

13.1.2 向函数传递表单数据 225

13.1.3 处理多值表单组件 226

13.1.4 用PHP生成表单 227

13.1.5 自动选择表单数据 228

13.1.6 PHP、Web表单和JavaScript 229

13.2.1 用户友好的URL 231

13.2 导航提示 231

13.2.2 “面包屑型”轨迹 233

13.2.3 创建定制错误处理函数 237

13.3 小结 238

14.1 HTTP认证概念 239

第14章 身份认证 239

14.2.1 认证变量 240

14.2 PHP认证 240

14.2.2 认证方法 241

14.3.1 密码指派 248

14.3 用户登录管理 248

14.3.2 使用CrackLib库测试密码易猜性 250

14.3.3 一次性URL和密码恢复 251

15.1 通过HTTP协议上传文件 254

第15章 处理文件上传 254

15.2.1 PHP的文件上传/资源指令 255

15.2 通过PHP处理上传 255

15.2.2 $_FILES数组 256

15.2.3 PHP的文件上传函数 256

15.2.5 文件上传示例 258

15.2.4 上传错误消息 258

15.3.1 安装HTTP_Upload 261

15.3 利用PEAR:HTTP_Upload 261

15.3.2 了解关于上传文件的更多信息 262

15.3 4 上传多个文件 263

15.3.3 将上传的文件移动到最终目标 263

15.4 小结 264

16.1.1 DNS 265

16.1 DNS、服务器和服务 265

第16章 网络 265

16.1.2 服务 268

16.1.3 建立套接字连接 269

16.2.1 配置指令 271

16.2 邮件 271

16.2.3 使用额外的信息首部发送电子邮件 272

16.2.2 发送纯文本电子邮件 272

16.2.5 发送HTML格式的电子邮件 273

16.2.4 将电子邮件发送给多个接收者 273

16.2.6 发送附件 274

16.3 IMAP、POP3和NNTP 275

16.3.2 建立和关闭连接 276

16.3.1 需求 276

16.3.3 了解更多关于邮箱和邮件的信息 277

16.3.4 获取邮件 280

16.3.6 发送邮件 286

16.3.5 写邮件 286

16.3.7 邮箱管理 287

16.4 流 288

16.3.8 邮件管理 288

16.4.1 流包装器和上下文 289

16.4.2 流过滤器 290

16.5.1 连接一台服务器 291

16.5 常见网络任务 291

16.5.2 端口扫描器 292

16.5.3 子网转换器 293

16.5.4 测试用户带宽 294

16.6 小结 295

第17章 PHP和LDAP 296

17.2.1 连接到LDAP服务器 297

17.2 在PHP中使用LDAP 297

17.1 LDAP介绍 297

17.2.2 绑定到LDAP服务器 298

17.2.4 获取LDAP数据 299

17.2.3 关闭LDAP服务器连接 299

17.2.5 处理项值 301

17.2.7 获取属性 302

17.2.6 统计所获取的项 302

17.2.8 排序和比较LDAP项 305

17.2.9 处理项 306

17.2.10 回收内存 308

17.2.12 更新LDAP数据 309

17.2.11 插入LDAP数据 309

17.2.13 删除LDAP数据 310

17.2.14 配置函数 311

17.2.16 处理区分名 312

17.2.15 字符编码 312

17.2.17 错误处理 313

17.3 小结 314

18.1.1 cookie 315

18.1 什么是会话处理 315

第18章 会话处理器 315

18.1.3 会话处理过程 316

18.1.2 URL重写 316

18.2 配置指令 317

18.3.1 开始会话 320

18.3 关键概念 320

18.3.4 创建和删除会话变量 321

18.3.3 获取和设置会话ID 321

18.3.2 销毁会话 321

18.3.5 编码和解码会话数据 322

18.4.1 自动登录 324

18.4 实际的会话处理示例 324

18.4.2 最近浏览的文档索引 325

18.5.1 将定制会话函数加入到PHP逻辑 327

18.5 创建定制会话处理器 327

18.5.2 基于MySQL的定制会话处理器 328

18.6 小结 330

19.1 什么是模板化引擎 331

第19章 用Smarty模板化 331

19.3 安装Smarty 333

19.2 Smarty介绍 333

19.4 使用Smarty 334

19.5.2 变量修饰符 336

19.5.1 注释 336

19.5 Smarty的表现逻辑 336

19.5.3 控制结构 339

19.5.4 语句 342

19.6 创建配置文件 344

19.6.2 引用配置变量 345

19.6.1 config_load 345

19.7 结合Smarty使用CSS 346

19.8.1 处理缓存生命期 347

19.8 缓存 347

19.8.3 为每个模板创建多个缓存 348

19.8.2 通过is_cached()消除处理开销 348

19.8.4 关于缓存的结束语 349

19.9 小结 350

第20章 Web服务 351

20.1 为什么使用Web服务 352

20.2 真正简单聚合 353

20.2.1 RSS语法 355

20.2.2 MagpieRSS 356

20.3 SimpleXML 361

20.3.1 SimpleXML函数 362

20.3.2 SimpleXML方法 363

20.4 SOAP 365

20.4.1 NuSOAP 366

20.4.2 PHP 5的SOAP扩展 374

20.5 使用PHP Web服务和C#客户 381

20.6 小结 383

21.1 安全地配置PHP 384

第21章 安全PHP编程 384

21.1.1 安全模式 385

21.1.2 其他与安全有关的配置参数 386

21.2 隐藏配置细节 388

21.3 隐藏敏感数据 389

21.4.1 文件删除 390

21.4 清理用户数据 390

21.3.1 注意文档根目录 390

21.3.2 拒绝访问某些文件扩展名 390

21.4.2 跨网站脚本 391

21.4.3 清理用户输入:解决方案 392

21.5.1 PHP的加密函数 394

21.5 数据加密 394

21.5.2 mhash 395

21.5.3 MCrypt 396

21.6 小结 397

22.1.1 安装SQLite 398

22.1 SQLite介绍 398

第22章 SQLite 398

22.1.2 使用SQLite命令行界面 399

22.2.2 打开连接 400

22.2.1 SQLite指令 400

22.2 PHP的SQLite库 400

22.2.4 关闭连接 401

22.2.3 在内存中创建表 401

22.2.5 查询数据库 402

22.2.6 解析结果集 403

22.2.7 获取结果集细节 405

22.2.8 操作结果集指针 406

22.2.10 操作二进制数据 408

22.2.9 了解表模式的更多信息 408

22.2.11 创建和覆盖SQLite函数 409

22.2.12 创建聚集函数 410

22.3 小结 411

第23章 PDO介绍 412

23.2 使用PDO 413

23.1 为什么还要另一种数据库抽象层 413

23.2.2 PDO的数据库支持 414

23.2.1 安装PDO 414

23.2.3 连接到数据库服务器并选择数据库 415

23.2.4 存取属性 416

23.2.6 查询执行 417

23.2.5 错误处理 417

23.2.7 准备语句 418

23.2.8 获取数据 421

23.2.9 设置绑定列 423

23.2.10 事务 424

23.3 小结 425

24.1.1 灵活性 426

24.1 MySQL为什么如此流行 426

第24章 MySQL介绍 426

24.1.2 强大功能 427

24.1.3 灵活的许可选择 428

24.2 MySQL 4 429

24.1.4 超级活跃的用户群体 429

24.4.1 craigslist 430

24.4 著名的MySQL用户 430

24.3 MySQL 5 430

24.5 小结 431

24.4.3 维基百科 431

24.4.2 雅虎财经 431

25.1 PHP和MySQL许可问题 432

第25章 安装和配置MySQL 432

25.2 下载MySQL 433

25.1.2 Windows 433

25.1.1 Linux 433

25.3.1 Linux 434

25.3 安装MySQL 434

25.3.2 Windows 437

25.5.1 手工控制守护进程 439

25.5 启动和停止MySQL 439

25.4 设置MySQL管理员密码 439

25.5.2 自动启动和停止MySQL 441

25.6 配置和优化MySQL 442

25.6.2 配置和优化参数 443

25.6.1 mysqld_safe 443

25.6.3 my.cnf文件 446

25.7 小结 448

26.1 标准客户端选项 449

第26章 众多MySQL客户端 449

26.3 一般选项 450

26.2 连接选项 450

26.4.1 关键mysql选项 451

26.4 mysql 451

26.4.2 以交互模式使用mysql 452

26.4.3 查看配置变量和系统状态 454

26.4.4 以批处理模式使用mysql 455

26.4.5 有用的mysql提示 456

26.5 mysqladmin 458

26.6.2 mysqlshow 459

26.6.1 mysqldump 459

26.6 其他实用工具 459

26.6.4 mysqlimport 460

26.6.3 mysqlhotcopy 460

26.6.6 mysqlcheck 461

26.6.5 myisamchk 461

26.7.1 MySQL管理器 462

26.7 第三方客户端程序 462

26.7.2 phpMyAdmin 463

26.7.3 MySQL查询浏览器 464

26.7.4 Navicat 465

26.8 小结 466

27.1 存储引擎 467

第27章 MySQL存储引擎和数据类型 467

27.1.2 MyISAM 468

27.1.1 InnoDB 468

27.1.3 MEMORY 470

27.1.6 FEDERATED 471

27.1.5 BDB 471

27.1.4 MERGE 471

27.1.7 ARCHIVE 472

27.1.11 存储引擎FAQ 473

27.1.10 BLACKHOLE 473

27.1.8 CSV 473

27.1.9 EXAMPLE 473

27.2.1 数据类型 475

27.2 数据类型和属性 475

27.2.2 数据类型属性 479

27.3.1 操作数据库 481

27.3 操作数据库和表 481

27.3.2 操作表 483

27.3.4 INFORMATION_SCHEMA 485

27.3.3 修改表结构 485

27.4 小结 487

28.1 首先应当做什么 488

第28章 保护MySQL的安全 488

28.3 MySQL访问权限系统 489

28.2 保护mysqld守护进程 489

28.3.1 权限系统的工作方式 490

28.3.2 访问信息存储在哪里 491

28.4.1 CREATE USER 498

28.4 用户和权限管理 498

28.4.4 GRANT和REVOKE命令 499

28.4.3 RENAME USER 499

28.4.2 DROP USER 499

28.5 限制用户资源 503

28.4.5 查看权限 503

28.6.1 授权选项 504

28.6 保护MySQL连接 504

28.6.2 SSL选项 505

28.6.5 在my.cnf文件中存储SSL选项 506

28.6.4 使用启用SSL的客户端进行连接 506

28.6.3 启动启用SSL的MySQL服务器 506

28.7 小结 507

29.1.2 在Windows中启用MySQL扩展 508

29.1.1 在Linux中启用MySQL扩展 508

第29章 PHP的MySQL扩展 508

29.1 预备工作 508

29.2.1 建立和关闭连接 509

29.2 PHP的MySQL命令 509

29.1.3 用户权限 509

29.1.4 示例数据 509

29.2.3 保护连接信息 511

29.2.2 在单独的文件中存储连接信息 511

29.3 选择数据库 512

29.4 查询MySQL 512

29.5 获取和显示数据 513

29.6 插入数据 516

29.7 修改数据 517

29.8 删除数据 519

29.9 所选择的记录和受影响的记录 520

29.10 获取数据库和表的信息 521

29.11 获取字段信息 523

29.11.1 查看表属性 526

29.11.2 获取错误信息 527

29.12 辅助函数 528

29.13 小结 530

第30章 PHP的mysqli扩展 531

30.2.1 连接MySQL服务器 532

30.2 使用mysqli扩展 532

30.1 预备工作 532

30.1.1 在UNIX中启用mysqli扩展 532

30.1.2 在Windows中启用mysqli扩展 532

30.1.3 示例数据 532

30.2.2 连接错误报告 533

30.2.3 选择一个MySQL数据库 535

30.3.1 查询执行 536

30.3 查询 536

30.2.4 关闭MySQL连接 536

30.3.2 回收查询内存 537

30.3.3 准备结果集 538

30.3.4 解析结果 539

30.3.5 多个查询 542

30.3.6 准备语句 543

30.4 数据库事务 548

30.5 小结 549

31.1.1 存储例程的优点 550

31.1 应当使用存储例程吗 550

第31章 存储例程 550

31.2.1 存储例程权限表 551

31.2 MySQL如何实现存储例程 551

31.1.2 存储例程的缺点 551

31.2.2 创建存储例程 553

31.2.3 声明和设置变量 554

31.2.4 执行存储例程 555

31.2.5 多语句存储例程 556

31.2.6 从另一个例程中调用例程 562

31.2.9 查看例程状态 563

31.2.8 删除存储例程 563

31.2.7 修改存储例程 563

31.2.11 条件和处理器 564

31.2.10 查看例程的创建语法 564

31.3.1 创建员工奖金界面 565

31.3 将例程集成到Web应用程序 565

31.4 小结 566

31.3.2 获取多条记录 566

32.1.1 为什么使用触发器 567

32.1 介绍触发器 567

第32章 MySQL触发器 567

32.1.3 在事件后采取行动 568

32.1.2 在事件前采取行动 568

32.2 MySQL对触发器的支持 569

32.1.4 前触发器和后触发器 569

32.2.1 创建触发器 570

32.2.2 查看现有的触发器 571

32.2.4 删除触发器 572

32.2.3 修改触发器 572

32.2.5 级联触发器 573

32.3 将触发器集成到Web应用程序 574

32.4 小结 575

33.1 视图概述 576

第33章 视图 576

33.2.1 创建和执行视图 577

33.2 MySQL对视图的支持 577

33.2.2 查看视图信息 581

33.2.3 修改视图 582

33.3 将视图结合到Web应用程序中 583

33.2.5 更新视图 583

33.2.4 删除视图 583

33.4 小结 585

34.1 示例数据 586

第34章 实用数据库查询 586

34.2.2 创建一个简单表 587

34.2.1 安装HTML_Table 587

34.2 用PEAR创建表格输出 587

34.2.4 根据数据库数据创建表格 589

34.2.3 创建更可读的行输出 589

34.2.5 一般化输出过程 591

34.3 排序输出 593

34.4 创建分页输出 594

34.5 列出页码 597

34.6 子查询 598

34.6.2 用子查询确定存在性 599

34.6.1 用子查询完成比较 599

34.6.3 用子查询维护数据库 600

34.7.1 游标基础 601

34.7 游标 601

34.6.4 在PHP中使用子查询 601

34.7.4 使用游标 602

34.7.3 打开游标 602

34.7.2 创建游标 602

34.7.5 关闭游标 603

34.8 小结 604

34.7.6 在PHP中使用游标 604

35.1.1 主键索引 605

35.1 数据库索引 605

第35章 索引和搜索 605

35.1.2 唯一索引 606

35.1.3 常规索引 607

35.1.4 全文索引 608

35.2 基于表单的搜索 611

35.1.5 索引最佳实践 611

35.2.1 执行简单搜索 612

35.2.2 扩展搜索功能 613

35.2.3 执行全文搜索 614

35.3 小结 615

36.2 MySQL的事务功能 616

36.1 什么是事务 616

第36章 事务 616

36.2.2 表创建 617

36.2.1 系统需求 617

36.2.3 InnoDB配置参数 618

36.3 示例项目 619

36.3.2 执行示例事务 620

36.3.1 示例数据 620

36.4 用PHP构建事务应用程序 622

36.3.4 用法提示 622

36.3.3 备份和恢复InnoDB表 622

36.5 小结 624

37.2 获得合适的媒介 625

37.1 示例表 625

第37章 导入和导出数据 625

37.3 导出数据 626

37.4.1 利用LOAD DATA INFILE导入数据 628

37.4 导入数据 628

37.4.2 用mysqlimport导入 631

37.4.3 用PHP加载表数据 633

37.5 小结 634