欢迎光临
免费的PDF电子书下载网站

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

编辑推荐

1.本书是全面讲述PHP与MySQL的经典畅销之作,不但详细介绍了这两种技术及其相关工具的核心特性,还讲解了如何高效地结合这两种技术构建出健壮的数据驱动的应用程序。 2.作者基于20多年的专业开发经验,提供了大量实用示例,并针对开发者在实践中会遇到的挑战提供了真知灼见。 3.第5版全面涵盖了PHP7的的新增强和新改进,以及新版MySQL的那些值得信赖的特性。对于想使用PHP编写动态Web应用的读者来说,本书是一份实用的参考指南。 上一版读者评论 “内容广,可以用来入门,用来参考查询也不错。” “写得很全面,涵盖了PHP的方方面面,讲得也通俗易懂,并且都是作者经验之谈。例子都是具体实践中会遇到的问题,和实际开发很贴近。”

内容简介

本书是全面讲述PHP 与MySQL 的经典畅销之作,不但详细介绍了这两种技术及其相关工具的核心特性,还讲解了如何高效地结合这两种技术构建出健壮的数据驱动的应用程序。书中大量实际的示例和深入的分析均来自于作者在这方面多年的专业经验,可用于解决开发者在实际工作中所面临的各种挑战。第5 版涵盖了PHP 7 的新增功能以及新版MySQL 的新特性。

作者简介

弗兰克·M.克罗曼(Frank M. Kromann) Amazon软件开发经理,Web by Pixel公司联合创始人兼CEO,有20余年开发和管理经验的PHP专家,在使用软件和技术解决商业问题方面有30余年经验。在杂志上发表过多篇PHP文章,另合著有《PHP 5范例代码查询辞典》。

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

目录

第 1 章 PHP 简介    1

1.1 PHP 核心特性    1

1.1.1 实用性    1

1.1.2 能力    3

1.1.3 可能性    3

1.1.4 价格    3

1.2 PHP 现状    4

1.3 PHP 生态系统    5

1.3.1 Drupal    5

1.3.2 WordPress    6

1.3.3 Magento    6

1.3.4 MediaWiki    6

1.3.5 SugarCRM    6

1.3.6 Zend Framework    6

1.4 小结    7

第 2 章 环境配置    8

2.1 选择主机环境    9

2.1.1 虚拟服务器    9

2.1.2 平台即服务(PaaS)    9

2.2 安装先决条件    9

2.2.1 Windows    9

2.2.2 macOS    14

2.2.3 Linux    15

2.2.4 从源代码安装    15

2.3 配置PHP    15

2.3.1 Apache httpd.conf 和.htaccess文件    16

2.3.2 在运行脚本中配置    17

2.3.3 PHP 的配置指令    17

2.4 选择编辑器    23

2.4.1 PHPStorm    23

2.4.2 Atom    23

2.4.3 Sublime Text    23

2.4.4 Visual Studio Code    23

2.4.5 PDT(PHP 开发工具)    23

2.4.6 Zend Studio    23

2.5 小结    24

第3 章 PHP 基础    25

3.1 在网页中嵌入PHP 代码    25

3.1.1 默认语法    25

3.1.2 短标签    26

3.1.3 嵌入多个代码块    26

3.2 在代码中添加注释    27

3.2.1 单行C 语法    27

3.2.2 多行注释    27

3.3 向客户端输出数据    28

3.3.1 使用printf()语句进行复杂输出    29

3.3.2 sprintf()语句    30

3.4 PHP 数据类型    30

3.4.1 标量数据类型    30

3.4.2 复合数据类型    31

3.4.3 数据类型转换    32

3.4.4 数据类型的自动转换    33

3.4.5 类型标识符函数    34

3.5 使用变量处理动态数据    34

3.5.1 变量声明    34

3.5.2 PHP 超级全局变量    35

3.6 使用常量管理固定数据    38

3.7 使用表达式    38

3.7.1 操作数:表达式的输入    38

3.7.2 操作符:表达式的行为    39

3.8 字符串插值    43

3.8.1 双引号字符串    43

3.8.2 转义序列    44

3.8.3 单引号字符串    44

3.8.4 花括号    45

3.8.5 heredoc    45

3.8.6 nowdoc    45

3.9 控制结构    45

3.9.1 条件语句    46

3.9.2 使用循环语句进行重复迭代   47

3.9.3 文件包含语句    51

3.10 小结    52

第4 章 函数    53

4.1 调用函数    53

4.2 创建函数    54

4.2.1 返回多个值    55

4.2.2 按值传递参数    55

4.2.3 参数默认值    56

4.2.4 使用类型声明    57

4.2.5 递归函数    57

4.2.6 匿名函数    60

4.2.7 函数库    60

4.3 小结    61

第5 章 数组    62

5.1 什么是数组    62

5.2 创建数组    63

5.2.1 使用array()创建数组    64

5.2.2 使用list()提取数组    64

5.2.3 用预定义范围的值填充数组   65

5.2.4 检测数组    66

5.3 输出数组    66

5.4 添加和删除数组元素    67

5.4.1 在数组开头添加一个值    68

5.4.2 在数组末尾添加一个值    68

5.4.3 在数组开头删除一个值    68

5.4.4 在数组末尾删除一个值    68

5.5 数组元素定位    68

5.5.1 搜索数组    69

5.5.2 提取数组的键    70

5.5.3 提取数组的值    70

5.6 提取列    70

5.7 数组遍历    71

5.7.1 提取数组当前的键    71

5.7.2 提取数组当前的值    71

5.7.3 移动数组指针    72

5.7.4 向函数传递数组值    72

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

5.8.1 确定函数大小    73

5.8.2 计算数组值的频率    74

5.8.3 确定数组中的唯一值    74

5.9 数组排序    75

5.9.1 翻转数组元素顺序    75

5.9.2 键与值的互换    75

5.9.3 数组排序    76

5.10 数组的合并、切片、剪接和拆分    79

5.10.1 合并数组    79

5.10.2 递归追加数组    80

5.10.3 组合两个数组    80

5.10.4 数组的切片    81

5.10.5 数组的剪接    81

5.10.6 计算数组交集    82

5.10.7 计算关联数组的交集    83

5.10.8 计算数组的差    83

5.10.9 计算关联数组的差    83

5.11 其他有用的数组函数    84

5.11.1 返回一组随机的键    84

5.11.2 重排数组元素    84

5.12 小结    85

第6 章 面向对象的PHP    86

6.1 OOP 的优点    86

6.1.1 封装    86

6.1.2 继承    87

6.1.3 多态    87

6.2 OOP 核心概念    87

6.2.1 类    87

6.2.2 对象    88

6.2.3 属性    88

6.2.4 常量    93

6.2.5 方法    93

6.3 构造函数与析构函数    96

6.3.1 构造函数    96

6.3.2 析构函数    98

6.4 静态类成员    99

6.5 instanceof 关键字    99

6.6 辅助函数    100

6.6.1 确定一个类是否存在    100

6.6.2 确定对象上下文    100

6.6.3 获取类的方法    100

6.6.4 获取类的属性    100

6.6.5 获取已声明的类    100

6.6.6 获取对象属性    101

6.6.7 确定对象的父类    101

6.6.8 确定对象类型    101

6.6.9 确定对象子类类型    101

6.6.10 确定方法是否存在    101

6.7 自动加载对象    101

6.8 trait    102

6.9 小结    102

第7 章 高级OOP 特性    103

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

7.2 对象克隆    103

7.2.1 克隆示例    104

7.2.2 __clone()方法    105

7.3 继承    106

7.3.1 类的继承    106

7.3.2 继承与构造函数    108

7.3.3 继承与延迟静态绑定    109

7.4 接口    110

7.4.1 实现单个接口    111

7.4.2 实现多个接口    112

7.4.3 确定接口是否存在    112

7.5 抽象类    112

7.6 命名空间    114

7.7 小结    116

第8 章 错误与异常处理    117

8.1 所有问题都是因你而生    117

8.2 配置PHP 错误报告    118

8.2.1 设置错误报告等级    118

8.2.2 在浏览器上显示错误信息    119

8.2.3 错误日志    119

8.2.4 创建和记录自定义消息    120

8.3 异常处理    120

8.4 PHP 异常处理功能    121

8.4.1 扩展基础异常类    121

8.4.2 默认构造函数    122

8.4.3 引入finally 代码块    122

8.4.4 扩展异常类    123

8.4.5 捕获多个异常    123

8.4.6 标准PHP 类库中的异常    125

8.5 PHP 7 中的错误处理    125

8.6 小结    126

第9 章 字符串与正则表达式    127

9.1 正则表达式    127

9.2 其他字符串专用函数    133

9.2.1 确定字符串的长度    134

9.2.2 比较两个字符串    134

9.2.3 处理字符串大小写    136

9.2.4 字符串与HTML 的转换    137

9.3 正则表达式函数的替代方式   141

9.3.1 根据预定义字符对字符串进行分词    141

9.3.2 根据预定义分隔符拆分字符串    142

9.3.3 将数组转换为字符串    142

9.3.4 解析复杂字符串    143

9.3.5 找出字符串最后出现的位置    143

9.3.6 将所有字符串实例替换为另一个字符串    144

9.3.7 提取部分字符串    144

9.3.8 根据预定义偏移量返回部分字符串    145

9.3.9 确定字符串出现的频率    145

9.3.10 将字符串的一部分替换为另一个字符串    146

9.3.11 填充和剥离字符串    146

9.3.12 字符与单词计数    147

9.4 小结    149

第 10 章 处理文件与操作系统    150

10.1 了解文件与目录    150

10.1.1 目录分隔符   150

10.1.2 解析目录路径    150

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

10.1.4 确定访问时间和修改时间    155

10.2 处理文件    156

10.2.1 资源的概念   156

10.2.2 换行符    156

10.2.3 文件结束标志    156

10.2.4 打开与关闭文件    157

10.2.5 从文件读取    158

10.2.6 将字符串写入文件    164

10.2.7 移动文件指针    164

10.2.8 读取目录内容    165

10.3 运行shell 命令    166

10.3.1 删除目录    166

10.3.2 重命名文件    167

10.3.3 触摸文件    167

10.4 系统级程序执行    167

10.4.1 净化输入    167

10.4.2 PHP 程序执行函数    168

10.5 小结    170

第 11 章 第三方程序库    171

11.1 PEAR 简介    171

11.1.1 安装PEAR    171

11.1.2 更新PEAR    172

11.2 使用PEAR 包管理器    172

11.2.1 安装PEAR 包    172

11.2.2 自动安装所有依赖    173

11.2.3 查看已经安装的PEAR 包    173

11.3 Composer 介绍    173

11.3.1 安装Composer    173

11.3.2 使用Composer    174

11.4 使用C 程序库扩展PHP    175

11.5 小结    176

第 12 章 日期与时间    177

12.1 UNIX 时间戳    177

12.2 PHP 日期与时间库    177

12.2.1 验证日期    178

12.2.2 格式化日期和时间    178

12.2.3 将时间戳转换为用户友好的值    181

12.2.4 处理时间戳    181

12.3 日期处理    183

12.3.1 显示本地日期与时间    183

12.3.2 显示网页最近的修改日期    185

12.3.3 确定当前月份的天数    186

12.3.4 确定任意给定月份的天数    186

12.3.5 计算当前日期X 天后的日期    186

12.4 日期和时间类    187

12.4.1 DateTime 构造函数    187

12.4.2 格式化日期    187

12.4.3 在实例化之后设定日期    188

12.4.4 在实例化之后设定时间    188

12.4.5 修改日期和时间    188

12.4.6 计算两个日期之间的差    189

12.5 小结    189

第 13 章 表单    190

13.1 PHP 和Web 表单    190

13.2 验证表单数据    192

13.2.1 文件删除    192

13.2.2 跨站脚本    192

13.2.3 净化用户输入    193

13.2.4 使用Filter 扩展检验和净化数据    195

13.2.5 处理多值表单组件    197

13.3 小结    198

第 14 章 用户身份验证    199

14.1 HTTP 身份验证的概念    199

14.2 使用PHP 进行用户身份验证    200

14.2.1 PHP 身份验证变量    201

14.2.2 有用的函数    201

14.3 PHP 身份验证方法    202

14.3.1 硬编码身份验证    202

14.3.2 基于文件的身份验证    202

14.3.3 基于数据库的身份验证    204

14.4 用户登录管理    205

14.4.1 密码散列    205

14.4.2 一次性URL 和密码找回    206

14.5 使用OAuth 2.0    208

14.6 小结    209

第 15 章 处理文件上传    210

15.1 通过HTTP 上传文件    210

15.2 使用PHP 上传文件    211

15.2.1 PHP 文件上传及资源指令    211

15.2.2 $_FILES 数组    212

15.2.3 PHP 文件上传函数    212

15.2.4 上传中的错误消息    213

15.2.5 一个简单的例子    214

15.3 小结    215

第 16 章 网络    216

16.1 DNS、服务与服务器    216

16.1.1 DNS    216

16.1.2 服务    220

16.1.3 建立socket 连接    221

16.2 邮件    223

16.2.1 配置指令    223

16.2.2 使用PHP 脚本发送电子邮件    224

16.3 常见网络任务    226

16.3.1 ping 一台服务器    227

16.3.2 创建一个端口扫描程序    227

16.3.3 创建一个子网转换程序    228

16.4 小结    229

第 17 章 会话处理    230

17.1 什么是会话处理    230

17.2 配置指令    230

17.2.1 管理会话存储介质    231

17.2.2 设置会话文件路径    231

17.2.3 自动开启会话   231

17.2.4 设置会话名称   231

17.2.5 选择cookie 或URL 重写    232

17.2.6 设置会话cookie 的生命周期    232

17.2.7 设置会话cookie 的有效URL路径    232

17.2.8 设置缓存    233

17.3 使用会话    234

17.3.1 开始一个会话   234

17.3.2 销毁一个会话   234

17.3.3 设置和提取会话ID    234

17.3.4 创建和删除会话变量    235

17.3.5 会话数据的编码和解码    236

17.4 会话处理实例    237

17.4.1 返回用户的自动登录    237

17.4.2 生成近期查看的文档索引    239

17.5 创建定制的会话处理程序    240

17.5.1 将定制会话函数嵌入PHP 逻辑    241

17.5.2 使用基于MySQL 的定制会话处理程序    241

17.6 小结    243

第 18 章 Web 服务    244

18.1 为什么要使用Web 服务    244

18.2 从API 开始    244

18.3 API 安全性    248

18.4 创建API   249

18.5 小结    253

第 19 章 PHP 安全编程    254

19.1 PHP 安全配置    254

19.2 隐藏配置的详细信息    256

19.2.1 隐藏Apache    256

19.2.2 隐藏PHP    257

19.3 隐藏敏感信息    257

19.3.1 隐藏文档根目录    258

19.3.2 拒绝访问带有某种扩展名的文件    258

19.4 数据加密    258

19.4.1 PHP 加密函数   258

19.4.2 使用OpenSSL 加密数据    261

19.5 小结    263

第 20 章 PHP 与jQuery 的集成    264

20.1 Ajax 简介    264

20.2 jQuery 简介    265

20.2.1 安装jQuery    265

20.2.2 一个简单的例子    265

20.2.3 对事件做出响应    266

20.2.4 jQuery 和DOM    267

20.3 创建用户名存在性检验器    269

20.4 小结    272

第 21 章 MVC 与框架    273

21.1 MVC 简介    273

21.2 PHP 框架解决方案    274

21.2.1 CakePHP 框架    275

21.2.2 Symfony 框架    275

21.2.3 Zend 框架    275

21.2.4 Phalcon 框架    275

21.2.5 Laravel 框架    276

21.2.6 PHP 框架协作组织(PHP-FIG)    280

21.2.7 PSR-1 和PSR-2 编码规范    280

21.2.8 PSR-4 自动加载    281

21.3 小结    281

第 22 章 MySQL 简介    282

22.1 MySQL 为何如此流行    282

22.1.1 灵活性    282

22.1.2 能力    283

22.1.3 灵活的许可证选项    284

22.2 著名的MySQL 用户    284

22.2.1 Craigslist    284

22.2.2 Twitter    284

22.2.3 GitHub    284

22.2.4 其他著名用户    284

22.3 MariaDB:MySQL 的一种替代方案    285

22.4 小结    285

第 23 章 安装与配置MySQL    286

23.1 下载MySQL    286

23.2 安装MySQL    286

23.2.1 在Linux 上安装MySQL    287

23.2.2 在Windows 上安装与配置MySQL   289

23.3 启动与停止MySQL    290

23.4 配置与优化MySQL    291

23.4.1 mysqld_safe 包装器    291

23.4.2 MySQL 配置与优化参数    291

23.4.3 my.cnf 文件    294

23.5 配置PHP 与MySQL 一起工作    296

23.5.1 在Linux 上重新配置PHP    296

23.5.2 在Windows 上重新配置PHP    296

23.6 小结    296

第 24 章 MySQL 客户端程序    297

24.1 命令行工具简介    297

24.1.1 mysql 客户端程序    297

24.1.2 mysqladmin 客户端程序    304

24.1.3 其他有用的客户端程序    305

24.2 有用的GUI 客户端程序    307

24.3 phpMyAdmin    307

24.4 小结    308

第 25 章 MySQL 存储引擎和数据类型    309

25.1 存储引擎    309

25.1.1 InnoDB    310

25.1.2 MyISAM    310

25.1.3 MEMORY    311

25.1.4 MERGE    312

25.1.5 FEDERATED    312

25.1.6 ARCHIVE    313

25.1.7 CSV    313

25.1.8 EXAMPLE    313

25.1.9 BLACKHOLE    314

25.1.10 存储引擎FAQ    314

25.2 数据类型和属性    315

25.2.1 数据类型    315

25.2.2 数据类型属性    319

25.3 处理数据库和表    321

25.3.1 处理数据库    321

25.3.2 处理数据表    322

25.3.3 修改表结构    324

25.3.4 INFORMATION_SCHEMA    325

25.4 小结    327

第 26 章 MySQL 安全性    328

26.1 首先要做的事情    328

26.2 mysqld 守护进程的安全性    329

26.3 MySQL 访问权限系统    330

26.3.1 权限系统的工作原理    330

26.3.2 访问控制信息保存的位置    331

26.4 用户与权限管理    334

26.4.1 创建用户    334

26.4.2 删除用户    335

26.4.3 重命名用户    335

26.4.4 grant 和revoke 命令    335

26.4.5 查看权限    339

26.5 限制用户资源    339

26.6 安全的MySQL 连接    340

26.6.1 授权选项    340

26.6.2 SSL 选项    341

26.6.3 启动MySQL 服务器并启用SSL    342

26.6.4 启用客户端SSL 连接    342

26.6.5 保存SSL 选项到my.cnf 文件    342

26.7 小结    342

第 27 章 PHP 与MySQL    343

27.1 安装的前提条件    344

27.1.1 在Linux/UNIX 上启用mysqli    344

27.1.2 在Windows 上启用mysqli    344

27.1.3 使用MySQL Native Driver    344

27.1.4 管理用户权限   344

27.1.5 样本数据    345

27.2 使用mysqli 扩展    345

27.2.1 建立与断开连接    345

27.2.2 处理连接错误   346

27.2.3 提取错误信息   346

27.2.4 保存连接信息到单独的文件中    347

27.2.5 保证连接信息的安全性    348

27.3 与数据库交互    348

27.3.1 发送查询到数据库    348

27.3.2 解析查询结果   350

27.3.3 确定选取和影响的行    351

27.3.4 使用预处理语句    352

27.4 执行数据库事务    356

27.4.1 开启自动提交模式    356

27.4.2 提交事务    356

27.4.3 回滚事务    356

27.5 小结    357

第 28 章 PDO 介绍    358

28.1 另一种数据库抽象层吗    358

28.2 使用PDO    359

28.2.1 安装PDO    360

28.2.2 连接到数据库服务器并选择数据库    360

28.2.3 处理错误    362

28.2.4 获取和设置属性    363

28.2.5 执行查询    364

28.2.6 预处理语句介绍    365

28.2.7 提取数据    368

28.2.8 设置绑定列    370

28.2.9 处理事务    371

28.3 小结    372

第 29 章 存储例程    373

29.1 你应该使用存储例程吗    373

29.1.1 存储例程的优点    373

29.1.2 存储例程的缺点    373

29.2 MySQL 如何实现存储例程    374

29.2.1 创建一个存储例程    374

29.2.2 声明和设置变量    376

29.2.3 执行存储例程    377

29.2.4 创建并使用多语句存储例程    377

29.2.5 在一个存储例程中调用另一个存储例程    383

29.2.6 修改存储例程    384

29.2.7 删除存储例程    384

29.2.8 查看存储例程的状态    384

29.2.9 查看存储例程的创建语法    385

29.2.10 条件处理    386

29.3 在Web 应用中集成存储例程    386

29.3.1 创建雇员奖金接口    386

29.3.2 提取多个行   387

29.4 小结    388

第30 章 MySQL 触发器    389

30.1 触发器介绍    389

30.1.1 为什么使用触发器    389

30.1.2 在事件之前采取行动    390

30.1.3 在事件之后采取行动    390

30.1.4 before 触发器与after 触发器    391

30.2 MySQL 触发器支持    391

30.2.1 创建触发器   391

30.2.2 查看已有的触发器    392

30.2.3 修改触发器   394

30.2.4 删除触发器   394

30.3 集成触发器到Web 应用    395

30.4 小结    396

第31 章 MySQL 视图    397

31.1 视图介绍    397

31.2 MySQL 对视图的支持    398

31.2.1 创建并运行视图    398

31.2.2 查看视图信息    402

31.2.3 修改视图    404

31.2.4 删除视图    404

31.2.5 更新视图    404

31.3 集成视图到Web 应用    405

31.4 小结    406

第32 章 实用数据库查询    407

32.1 样本数据    407

32.2 创建表格化输出    407

32.2.1 安装HTML_Table    408

32.2.2 创建简单表格    408

32.2.3 创建可读性更好的行输出    409

32.2.4 根据数据库数据创建表格    410

32.3 输出排序    411

32.4 创建分页输出    412

32.5 列出页码    414

32.6 使用子查询查询多个表    415

32.6.1 使用子查询进行比较    416

32.6.2 使用子查询确定存在性    416

32.6.3 使用子查询进行数据库维护    417

32.6.4 在PHP 中使用子查询    417

32.7 使用游标迭代结果集合    418

32.7.1 游标的基础知识    418

32.7.2 创建游标    418

32.7.3 打开游标    418

32.7.4 使用游标    419

32.7.5 关闭游标    419

32.7.6 在PHP 中使用游标    420

32.8 小结    420

第33 章 索引与搜索    421

33.1 数据库索引    421

33.1.1 主键索引    421

33.1.2 唯一索引    422

33.1.3 普通索引    423

33.1.4 全文索引    424

33.1.5 索引最佳实践    427

33.2 基于表单的搜索    427

33.2.1 执行简单搜索    428

33.2.2 扩展搜索功能    429

33.2.3 执行全文搜索    430

33.3 小结    431

第34 章 事务    432

34.1 什么是事务    432

34.2 MySQL 事务功能    432

34.2.1 系统要求    432

34.2.2 表格创建    433

34.3 一个示例项目    433

34.3.1 创建表格并添加样本数据    434

34.3.2 执行示例事务    434

34.3.3 使用建议    436

34.4 使用PHP 创建事务型应用    436

34.5 小结    437

第35 章 导入与导出数据    438

35.1 样本表格    438

35.2 使用数据分隔    438

35.3 导入数据    439

35.3.1 使用LOAD DATA INFILE 导入数据    439

35.3.2 使用mysqlimport 导入数据    441

35.3.3 使用PHP 加载表数据    443

35.4 导出数据    444

35.5 小结    446

PHP与MySQL程序设计 第5版 pdf下载声明

本pdf资料下载仅供个人学习和研究使用,不能用于商业用途,请在下载后24小时内删除。如果喜欢,请购买正版

pdf下载地址

版权归出版社和作者所有,下载链接已删除。如果喜欢,请购买正版!

链接地址:PHP与MySQL程序设计 第5版