PHP与MySQL程序设计(第4版)

PHP与MySQL程序设计(第4版) pdf epub mobi txt 电子书 下载 2026

出版者:人民邮电出版社
作者:W. Jason Gilmore
出品人:
页数:543
译者:朱涛江
出版时间:2011-6
价格:89.00元
装帧:平装
isbn号码:9787115253521
丛书系列:图灵程序设计丛书·Web开发系列
图书标签:
  • PHP
  • MySQL
  • Web开发
  • 编程
  • Web
  • 计算机
  • 技术
  • 计算机及软件
  • PHP
  • MySQL
  • Web开发
  • 数据库
  • 编程
  • 服务器端
  • 第四版
  • 入门
  • 教程
  • 技术
想要找书就要到 图书目录大全
立刻按 ctrl+D收藏本页
你会得到大惊喜!!

具体描述

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

本书内容全面深入,适合各层次PHP 和MySQL 开发人员阅读,既是优秀的学习教程,也可用作参考手册。

深入解析现代Web开发基石:PHP与MySQL精粹 在瞬息万变的数字时代,构建功能强大、交互性强的动态网站和Web应用程序已成为各行各业不可或缺的核心竞争力。而PHP和MySQL,作为开源Web开发领域的两大支柱,凭借其成熟的生态系统、强大的功能以及低廉的成本,依然是无数开发者首选的解决方案。本书并非直接探讨“PHP与MySQL程序设计(第4版)”这一特定书籍的目录或内容,而是聚焦于两大技术本身,旨在为读者提供一套全面、深入且实用的现代Web开发理念与实践指南。我们将循序渐进地剖析PHP语言的精髓,从基础语法到高级特性,再到其在Web开发中的应用,同时也会深入MySQL数据库的原理与操作,最终引导读者掌握如何将这两者无缝结合,构建高性能、可维护的Web应用。 第一部分:PHP语言的深度探索——从入门到精通 PHP,作为一种广泛使用的开源通用脚本语言,尤其适用于Web开发,并可嵌入HTML中。本书的PHP部分将从最基础的语法结构开始,确保即便是初学者也能快速上手。我们将详细讲解变量、数据类型(如整型、浮点型、字符串、布尔型、数组、对象等)、运算符(算术、比较、逻辑、赋值等)以及控制结构(条件语句if/else, switch;循环语句for, while, foreach)。通过大量清晰的代码示例,读者可以直观地理解这些基本概念是如何工作的。 然而,Web开发远不止于此。随着学习的深入,我们将转向PHP的函数,理解如何定义和调用函数,参数传递,返回值,以及作用域。这将是组织代码、提高复用性的关键。接下来,我们将深入探讨PHP面向对象编程(OOP)的强大能力。从类、对象、属性、方法出发,逐步讲解封装、继承和多态这三大面向对象的核心概念。掌握OOP不仅能使我们的代码结构更清晰、更易于扩展,还能让我们更好地理解和使用各种成熟的PHP框架。 在Web开发过程中,处理数据和用户输入是必不可少的环节。本书将详细讲解如何处理HTTP请求(GET、POST),如何安全地接收和验证用户输入,防止常见的安全漏洞,如SQL注入和跨站脚本攻击(XSS)。我们将介绍PHP内置的字符串处理函数,如`strlen()`, `substr()`, `str_replace()`, `explode()`, `implode()`等,以及正则表达式的应用,帮助读者进行高效的数据清洗和格式化。 文件操作是Web应用程序实现动态内容和文件上传功能的关键。我们将讲解如何打开、读取、写入、删除文件,以及如何处理文件上传,包括文件信息的获取、临时文件的管理以及文件的存储。 此外,本书还将覆盖PHP中一些高级但至关重要的主题。例如,会话(Session)和Cookie的管理,这是实现用户登录状态、个性化体验的基础。我们将深入理解它们的工作原理、安全注意事项以及最佳实践。错误和异常处理机制的讲解,能帮助开发者编写更健壮、更易于调试的代码。我们将学习如何使用`try-catch`块来捕获和处理运行时错误,以及如何自定义异常。 对于需要与外部服务交互的应用程序,PHP的cURL库提供了强大的解决方案。我们将演示如何使用cURL来发送HTTP请求,与RESTful API进行数据交换,以及实现网页抓取等功能。 最后,在PHP语言部分,我们还将触及一些性能优化和安全加固的策略。了解PHP的内存管理机制,代码的性能瓶颈,以及如何利用缓存技术(如OpCache)来提升执行效率。同时,强调安全编码实践,包括对用户输入的过滤、对敏感数据的加密,以及防止CSRF等攻击。 第二部分:MySQL数据库的精湛技艺——数据存储与管理的核心 MySQL,作为全球最流行的开源关系型数据库管理系统之一,以其高性能、可靠性和易用性著称。本书的MySQL部分将带领读者从零开始,构建对数据库系统的深刻理解。 我们将首先介绍数据库的基本概念,包括什么是数据库、表、字段、记录、主键、外键、索引等。然后,我们将详细讲解SQL(Structured Query Language)——用于管理和操作关系型数据库的标准语言。从最基础的CRUD(Create, Read, Update, Delete)操作开始,我们将深入讲解`SELECT`语句的各种强大功能,包括条件过滤(`WHERE`)、排序(`ORDER BY`)、分组(`GROUP BY`)、聚合函数(`COUNT`, `SUM`, `AVG`, `MAX`, `MIN`)以及多表连接(`JOIN`),让读者能够从数据库中高效地提取所需数据。 数据定义语言(DDL)是数据库结构设计的基础。我们将学习如何使用`CREATE TABLE`, `ALTER TABLE`, `DROP TABLE`等语句来创建、修改和删除表,以及如何定义字段的数据类型、约束(如`NOT NULL`, `UNIQUE`, `PRIMARY KEY`, `FOREIGN KEY`, `DEFAULT`),确保数据的完整性和一致性。 数据操作语言(DML)则关注数据的增删改。除了前面提到的`INSERT`, `UPDATE`, `DELETE`,我们还会讲解事务(Transaction)的概念。理解事务的ACID(Atomicity, Consistency, Isolation, Durability)特性,以及如何使用`BEGIN`, `COMMIT`, `ROLLBACK`来保证数据操作的原子性和一致性,这对于构建可靠的应用程序至关重要。 索引是提升数据库查询性能的关键。我们将深入讲解不同类型的索引(如B-tree索引、哈希索引),理解索引的工作原理,以及如何根据查询需求创建和优化索引,显著加快数据检索速度。 数据库的性能优化是一个持续的过程。我们将讨论如何分析SQL查询的执行计划(`EXPLAIN`),找出性能瓶颈,并采取相应的优化措施。这包括优化查询语句、调整表结构、合理设计索引等。 此外,本书还将涵盖数据库的安全性和维护。我们将学习如何创建用户、分配权限,以保护数据库免受未经授权的访问。数据备份与恢复是保证数据安全的重要环节,我们将介绍MySQL的备份工具和恢复策略。 第三部分:PHP与MySQL的完美融合——构建动态Web应用 在掌握了PHP语言和MySQL数据库各自的知识后,本书的第三部分将聚焦于将两者无缝集成,构建功能完备的动态Web应用程序。 我们将详细讲解如何使用PHP的MySQL扩展(如`mysqli`或PDO)来连接MySQL数据库。PDO(PHP Data Objects)因其良好的跨数据库兼容性和更强的安全性,通常是推荐的选择。我们将演示如何建立数据库连接,执行SQL查询,并处理查询结果。 参数化查询(Prepared Statements)是防止SQL注入攻击的核心技术。我们将重点讲解如何使用PDO或`mysqli`的参数化查询来安全地执行SQL语句,有效地保护应用程序免受恶意攻击。 用户认证与授权是Web应用安全性的重要组成部分。我们将讲解如何使用PHP和MySQL来存储用户信息,实现用户注册、登录、登销功能,以及如何根据用户的角色和权限来控制对不同资源的访问。 文件上传与数据库的结合是实现内容管理、用户生成内容等功能的常见需求。我们将演示如何处理用户上传的文件,并将文件的相关信息(如文件名、路径、上传时间)存储到MySQL数据库中。 AJAX(Asynchronous JavaScript and XML)技术在现代Web开发中扮演着越来越重要的角色,它允许Web页面在不重新加载整个页面的情况下更新部分内容。我们将介绍如何在PHP和MySQL的后端与前端JavaScript之间利用AJAX进行数据交互,实现更流畅的用户体验。 本书还将引导读者了解一些Web应用程序开发的通用模式和最佳实践,例如MVC(Model-View-Controller)架构模式。虽然不深入讲解某个具体框架,但会阐述这种分层设计的理念,帮助读者理解如何组织代码,使应用程序更具可维护性和可扩展性。 我们还会探讨如何构建RESTful API,让PHP应用程序能够作为后端服务,为不同的客户端(如Web浏览器、移动应用)提供数据。 在整个过程中,我们将始终强调代码的可读性、可维护性和安全性。通过大量的实际项目示例,读者将有机会亲手实践所学的知识,从简单的博客系统到更复杂的电子商务原型,逐步提升自己的Web开发能力。 本书旨在成为您通往PHP与MySQL Web开发世界的指南,帮助您构建出既强大又安全的现代Web应用程序。通过系统的学习和大量的实践,您将能够自信地驾驭这两个强大的开源技术,在数字浪潮中创造出属于自己的精彩。

作者简介

W. Jason Gilmore 世界知名软件技术专家,CodeMash技术大会创始人之一,MySQL全球技术大会顾问委员会成员。他曾负责Apress出版公司开源图书出版项目,开 发了大量PHP和MySQL应用程序,在各大专业媒体发表了众多有影响力的技术文章,并通过以其姓名命名的W.J. Gilmore公司为小型企业提供咨询和Web开发服务,其以往著作包括畅销书Easy PHP Websites with the Zend Framework和Easy PayPal with PHP。他的个人网站http://www.wjgilmore.com。

目录信息

第1 章 PHP 概述  1
1.1 历史   1
1.1.1 PHP 4  2
1.1.2 PHP 5   3
1.1.3 PHP 5.3  4
1.1.4 PHP 6   4
1.2 一般语言特性  4
1.2.1 实用性  4
1.2.2 强大功能   5
1.2.3 可选择性   5
1.2.4 成本  6
1.3 小结  6
第2 章 环境配置  7
2.1 安装的前提条件  7
2.1.1 下载Apache  8
2.1.2 下载PHP   8
2.1.3 下载文档    9
2.2 在Linux 上安装Apache 和PHP   9
2.3 在Windows 上安装Apache 和PHP   11
2.4 在Windows 上安装IIS 和PHP   12
2.5 测试安装  13
2.6 配置PHP  14
2.6.1 在Linux 上构建时配置PHP   14
2.6.2 定制Windows 构建   15
2.7 运行时配置  15
2.7.1 管理PHP 的配置指令  15
2.7.2 PHP 的配置指令  17
2.8 选择代码编辑器  28
2.8.1 Adobe Dreamweaver CS5    28
2.8.2 Notepad++   28
2.8.3 PDT   28
2.8.4 Zend Studio   29
2.9 选择Web 托管服务提供商   29
2.10 小结  30
第3 章 PHP 基础  31
3.1 在Web 页面中嵌入PHP 代码   31
3.1.1 默认语法  31
3.1.2 短标签  32
3.1.3 脚本  33
3.1.4 ASP 风格  33
3.1.5 嵌入多个代码块  33
3.2 为代码添加注释  33
3.2.1 单行C++语法  33
3.2.2 shell 语法  34
3.2.3 多行C 语法  34
3.3 向浏览器输出数据  35
3.3.1 print()语句  35
3.3.2 echo()语句  35
3.3.3 printf()语句  36
3.3.4 sprintf()   37
3.4 PHP 支持的数据类型  37
3.4.1 标量数据类型   38
3.4.2 复合数据类型  39
3.4.3 使用类型强制转换实现数据类型间的转换  40
3.4.4 类型自动转换  41
3.4.5 与类型有关的函数  41
3.4.6 类型标识符函数  42
3.5 标识符  42
3.6 变量  43
3.6.1 变量声明  43
3.6.2 变量作用域  44
3.6.3 PHP 的超级全局变量   47
3.6.4 变量的变量  50
3.7 常量  51
3.8 表达式  51
3.8.1 操作数  52
3.8.2 操作符  52
3.9 字符串插入   56
3.9.1 双引号  57
3.9.2 转义序列   57
3.9.3 单引号  58
3.9.4 大括号  58
3.9.5 heredoc   58
3.9.6 Nowdoc   59
3.10 控制结构  59
3.10.1 条件语句   59
3.10.2 循环语句  61
3.10.3 文件包含语句  65
3.11 小结  67
第4 章 函数   68
4.1 调用函数   68
4.2 创建函数    69
4.2.1 按值传递参数  69
4.2.2 按引用传递参数  70
4.2.3 默认参数值   71
4.2.4 使用类型提示  72
4.2.5 从函数返回值  72
4.2.6 递归函数  73
4.3 函数库  75
4.4 小结  76
第5 章 数组  77
5.1 什么是数组    77
5.2 创建数组   78
5.2.1 用array()创建数组   79
5.2.2 用list()提取数组   79
5.2.3 用预定义的值范围填充数组   80
5.2.4 测试数组   81
5.3 输出数组   81
5.4 添加和删除数组元素   82
5.4.1 在数组头添加元素   83
5.4.2 在数组尾添加元素  83
5.4.3 从数组头删除元素   83
5.4.4 从数组尾删除元素   83
5.5 定位数组元素  84
5.5.1 搜索数组  84
5.5.2 获取数组键  85
5.5.3 获取数组值  85
5.6 遍历数组  85
5.6.1 获取当前数组键  86
5.6.2 获取当前数组值  86
5.6.3 获取当前数组键和值   86
5.6.4 移动数组指针   87
5.6.5 向函数传递数组值   87
5.7 确定数组的大小和唯一性  88
5.7.1 确定数组的大小   89
5.7.2 统计数组元素出现的频度   89
5.7.3 确定唯一的数组元素   89
5.8 数组排序   90
5.8.1 逆置数组元素顺序  90
5.8.2 置换数组键和值  90
5.8.3 数组排序  91
5.9 合并、拆分、接合和分解数组  95
5.9.1 合并数组  95
5.9.2 递归追加数组  95
5.9.3 合并两个数组  96
5.9.4 拆分数组   96
5.9.5 接合数组   97
5.9.6 求数组的交集  98
5.9.7 求关联数组的交集  98
5.9.8 求数组的差集  99
5.9.9 求关联数组的差集  99
5.10 其他有用的数组函数  100
5.10.1 返回一组随机的键   100
5.10.2 随机洗牌数组元素   100
5.11 小结  102
第6 章 面向对象的PHP  103
6.1 OOP 的好处  103
6.1.1 封装  103
6.1.2 继承  104
6.1.3 多态  104
6.2 关键的OOP 概念  104
6.2.1 类  104
6.2.2 对象  105
6.2.3 属性  106
6.2.4 常量  110
6.2.5 方法  111
6.3 构造函数和析构函数  114
6.3.1 构造函数  114
6.3.2 析构函数  116
6.4 静态类成员  117
6.5 instanceof 关键字  118
6.6 辅助函数  118
6.7 自动加载对象   120
6.8 小结  120
第7 章 高级OOP 特性  121
7.1 PHP 不支持的高级OOP 特性  121
7.2 对象克隆  122
7.2.1 克隆示例  122
7.2.2 __clone()方法  123
7.3 继承  124
7.3.1 类继承  124
7.3.2 继承和构造函数  126
7.3.3 继承与延迟静态绑定   127
7.4 接口  128
7.4.1 实现一个接口  129
7.4.2 实现多个接口  130
7.5 抽象类  131
7.6 命名空间介绍  131
7.7 小结  133
第8 章 错误和异常处理  134
8.1 配置指令  134
8.2 错误日志  137
8.3 异常处理  139
8.3.1 为什么异常处理很方便   139
8.3.2 PHP 的异常处理实现   140
8.3.3 SPL 异常  144
8.4 小结  145
第9 章 字符串和正则表达式  146
9.1 正则表达式  146
9.1.1 正则表达式语法(POSIX)  147
9.1.2 PHP 的正则表达式函数(POSIX扩展)   148
9.1.3 正则表达式语法(Perl 风格)    151
9.2 其他字符串函数  157
9.2.1 确定字符串长度  157
9.2.2 比较两个字符串  158
9.2.3 处理字符串大小写  159
9.2.4 字符串与HTML 相互转换   161
9.3 正则表达式函数的替代函数   165
9.3.1 填充和剔除字符串   170
9.3.2 统计字符和单词个数   171
9.4 使用PEAR:Validate_US   173
9.4.1 安装Validate_US   174
9.4.2 使用Validate_US   174
9.5 小结  175
第10 章 处理文件和操作系统   176
10.1 了 解文件和目录  176
10.1.1 解析目录路径  176
10.1.2 计算文件、目录和磁盘大小   178
10.1.3 确定访问和修改时间   180
10.2 文件处理  182
10.2.1 资源的概念  182
10.2.2 识别换行符  182
10.2.3 识别文件末尾字符   182
10.2.4 打开和关闭文件  182
10.2.5 读取文件  184
10.2.6 将字符串写入文件   189
10.2.7 移动文件指针  189
10.2.8 读取目录内容  190
10.3 执行shell 命令  191
10.4 系统级程序执行  192
10.4.1 清理输入  193
10.4.2 PHP 的程序执行函数   194
10.5 小结  196
第11 章 PEAR  197
11.1 PEAR 的强大功能:数值格式转换   197
11.2 安装和更新PEAR  198
11.2.1 安装PEAR  198
11.2.2 PEAR 和托管公司  199
11.2.3 更新PEAR  200
11.3 使用PEAR 包管理器  200
11.3.1 查看安装的PEAR 包   200
11.3.2 了解已安装PEAR 包的更多信息  200
11.3.3 安装PEAR 包  201
11.3.4 将包包含到脚本中   202
11.3.5 升级PEAR 包   203
11.3.6 卸载包  203
11.3.7 降级PEAR 包   204
11.4 Pyrus 介绍  204
11.5 小结   204
第12 章 日期和时间  205
12.1 UNIX 时间戳  205
12.2 PHP 的日期和时间库  206
12.2.1 验证日期  206
12.2.2 格式化日期和时间   206
12.2.3 将时间戳转换为用户友好的值  209
12.2.4 处理时间戳   210
12.3 日期函数   211
12.3.1 显示本地化的日期和时间   211
12.3.2 显示网页的最新修改日期   214
12.3.3 确定当前月份中的天数   214
12.3.4 确定任意给定月份的天数   215
12.3.5 计算当前日期后X 天的日期   215
12.4 为PHP 5.1+用户提供的日期时间改进   215
12.4.1 DateTime 构造函数简介   215
12.4.2 格式化日期  216
12.4.3 实例化后设置日期   216
12.4.4 实例化后设置时间   217
12.4.5 修改日期和时间  217
12.4.6 计算两个日期之差   217
12.5 小结  218
第13 章 处理HTML 表单  219
13.1 PHP 和Web 表单  219
13.2 验证表单数据  221
13.2.1 文件删除  221
13.2.2 跨站点脚本攻击   221
13.2.3 清理用户输入  223
13.2.4 利用Filter 扩展验证和清理数据  225
13.2.5 处理多值表单组件   226
13.3 充分利用PEAR:HTML_QuickForm2   227
13.3.1 安装HTML_QuickForm2   227
13.3.2 创建和验证简单的表单   228
13.4 小结   230
第14 章 身份验证  231
14.1 HTTP 验证概念  231
14.2 用PHP 验证用户  233
14.2.1 PHP 验证变量  233
14.2.2 有用的函数  233
14.3 PHP 验证方法  234
14.3.1 硬编码的身份验证   234
14.3.2 基于文件的身份验证   235
14.3.3 基于数据库的身份验证   236
14.3.4 利用PEAR:Auth_HTTP   237
14.4 用户登录管理  239
14.4.1 用CrackLib 库测试密码易猜性  239
14.4.2 一次性URL 和密码恢复   241
14.5 小结   243
第15 章 处理文件上传  244
15.1 通过HTTP 协议上传文件   244
15.2 通过PHP 上传文件  245
15.2.1 PHP 的文件上传/资源指令   245
15.2.2 $_FILES 数组  246
15.2.3 PHP 的文件上传函数   247
15.2.4 上传错误消息  248
15.2.5 一个简单的示例  248
15.3 利用PEAR:HTTP_Upload    249
15.3.1 安装HTTP_Upload   249
15.3.2 上传文件    250
15.3.3 了解关于已上传文件的更多信息   250
15.3.4 上传多个文件   251
15.4 小结   252
第16 章 网络   253
16.1 DNS、服务器和服务   253
16.1.1 DNS  253
16.1.2 服务  257
16.1.3 建立套接字连接   257
16.2 邮件  259
16.2.1 配置指令  259
16.2.2 使用PHP 脚本发送电子邮件  260
16.3 常见网络任务  264
16.3.1 连接服务器  264
16.3.2 创建端口扫描器  265
16.3.3 创建子网转换器  265
16.3.4 测试用户带宽  267
16.4 小结  267
第17 章 PHP 和LDAP  268
17.1 在PHP 中使用LDAP   269
17.1.1 为PHP 配置LDAP    269
17.1.2 连接到LDAP 服务器   269
17.1.3 获取LDAP 数据  271
17.1.4 统计所获取的项  274
17.1.5 LDAP 记录排序   274
17.1.6 插入LDAP 数据   275
17.1.7 更新LDAP 数据  276
17.1.8 删除LDAP 数据  276
17.1.9 处理区分名  277
17.1.10 错误处理  278
17.2 小结   279
第18 章 会话处理程序  280
18.1 什么是会话处理  280
18.2 配置指令  281
18.2.1 管理会话存储介质   281
18.2.2 设置会话文件路径   281
18.2.3 自动启用会话   282
18.2.4 设置会话名称   282
18.2.5 选择cookie 或URL 重写   282
18.2.6 自动URL 重写  282
18.2.7 设置会话cookie 的生存期   283
18.2.8 设置会话cookie 的有效URL 路径  283
18.2.9 为启用会话的页面设置缓存方向   283
18.3 处理会话  284
18.3.1 开始会话  284
18.3.2 销毁会话  285
18.3.3 设置和获取会话ID   285
18.3.4 创建和删除会话变量   285
18.3.5 编码和解码会话数据   286
18.4 实际的会话处理示例  288
18.4.1 以返回用户的身份自动登录   288
18.4.2 生成最近浏览文档的索引   290
18.5 创建定制会话处理程序  291
18.5.1 将定制会话函数加入到PHP 逻辑  292
18.5.2 使用基于MySQL 的定制会话处理程序  292
18.6 小结  295
第19 章 用Smarty 模板化   296
19.1 什么是模板化引擎  296
19.2 Smarty 介绍  298
19.3 安装Smarty  298
19.4 使用Smarty  299
19.5 Smarty 的表现逻辑  301
19.5.1 注释  301
19.5.2 变量修饰符  301
19.5.3 控制结构  303
19.5.4 语句  307
19.6 创建配置文件  309
19.6.1 config_load  309
19.6.2 引用配置变量  310
19.7 结合Smarty 使用CSS  310
19.8 缓存  311
19.8.1 处理缓存生命期  311
19.8.2 通过is_cached()消除处理开销  312
19.8.3 为每个模板创建多个缓存   312
19.8.4 关于缓存的结束语   313
19.9 小结  313
第20 章 Web 服务  314
20.1 为什么使用Web 服务  314
20.2 RSS  315
20.3 SimplePie 介绍  318
20.3.1 安装SimplePie   318
20.3.2 用SimplePie 解析提要   319
20.3.3 解析多个提要  320
20.4 SimpleXML  321
20.4.1 加载XML  321
20.4.2 解析XML  323
20.5 小结  325
第21 章 保护网站安全  326
21.1 安全地配置PHP   326
21.2 隐藏配置细节   328
21.2.1 隐藏Apache   328
21.2.2 隐藏PHP   329
21.3 隐藏敏感数据   330
21.3.1 隐藏文档根目录  330
21.3.2 拒绝访问某些文件扩展名   330
21.4 数据加密  331
21.4.1 PHP 的加密函数  331
21.4.2 MCrypt 包   332
21.5 小结  333
第22 章 用jQuery 和PHP 创建AJAX增强特性  334
22.1 AJAX 介绍  334
22.2 jQuery 介绍  335
22.2.1 安装jQuery   336
22.2.2 一个简单示例   336
22.2.3 响应事件   336
22.2.4 jQuery 和DOM  338
22.3 创建一个用户名存在性验证程序   339
22.4 小结  342
第23 章 构建面向全世界的网站   343
23.1 用gettext 翻译网站     343
23.1.1 第一步:更新网站脚本  344
23.1.2 第二步:创建本地化库  345
23.1.3 第三步:创建翻译文件  345
23.1.4 第四步:翻译文本   346
23.1.5 第五步:生成二进制文件   346
23.1.6 第六步:在脚本中设置所需语言   346
23.2 本地化日期、数字和时间   347
23.3 小结  348
第24 章 Zend 框架介绍  349
24.1 MVC 介绍  349
24.2 PHP 的框架解决方案  351
24.2.1 CakePHP 框架  351
24.2.2 Solar 框架  351
24.2.3 symfony 框架  352
24.2.4 Zend 框架  352
24.3 Zend 框架介绍  352
24.3.1 安装Zend 框架   353
24.3.2 创建第一个Zend 框架驱动的网站  353
24.4 小结  363
第25 章 MySQL 介绍   364
25.1 是什么让MySQL 如此流行   364
25.1.1 灵活性   364
25.1.2 强大功能   365
25.1.3 灵活的许可选择  366
25.1.4 超级活跃的用户群体  367
25.2 MySQL 的演进   367
25.2.1 MySQL 4  367
25.2.2 MySQL 5   368
25.2.3 MySQL 5.1  368
25.2.4 MySQL 5.4 和5.5   369
25.3 著名的MySQL 用户  369
25.3.1 craigslist   369
25.3.2 维基百科  369
25.3.3 其他重要用户  369
25.4 小结  370
第26 章 安装和配置MySQL  371
26.1 下载MySQL  371
26.2 安装MySQL  372
26.2.1 在Linux 上安装MySQL   372
26.2.2 在Windows 上安装并配置MySQL   374
26.3 设置MySQL 管理员密码  376
26.4 启动和停止MySQL   376
26.5 配置和优化MySQL   377
26.5.1 mysqld_safe 包装程序  378
26.5.2 MySQL 的参数配置和优化   378
26.5.3 my.cnf 文件  381
26.6 配置PHP 以便与MySQL 协作  382
26.6.1 在Linux 上重新配置PHP  382
26.6.2 在Windows 上重新配置PHP    383
26.7 小结   383
第27 章 MySQL 客户端  384
27.1 命令行客户端介绍  384
27.1.1 mysql 客户端  384
27.1.2 mysqladmin 客户端  391
27.1.3 其他有用的客户端   392
27.1.4 客户端选项   395
27.2 MySQL 的GUI 客户程序   397
27.3 phpMyAdmin   398
27.4 小结   399
第28 章 MySQL 存储引擎和数据类型   400
28.1 存储引擎  400
28.1.1 MyISAM  401
28.1.2 IBMDB2I    402
28.1.3 InnoDB   403
28.1.4 MEMORY  403
28.1.5 MERGE  404
28.1.6 FEDERATED    404
28.1.7 ARCHIVE   405
28.1.8 CSV  406
28.1.9 EXAMPLE   406
28.1.10 BLACKHOLE  406
28.1.11 存储引擎的常见问题   406
28.2 数据类型和属性  407
28.2.1 数据类型   407
28.2.2 数据类型属性  411
28.3 处理数据库和表   414
28.3.1 处理数据库   414
28.3.2 处理表   415
28.3.3 更改表结构   417
28.3.4 INFORMATION_SCHEMA   417
28.4 小结    420
第29 章 保护MySQL 的安全   421
29.1 首先应当做什么  421
29.2 保护mysqld 守护进程   422
29.3 MySQL 访问权限系统   423
29.3.1 权限系统的工作方式    423
29.3.2 访问信息存储在哪里    424
29.4 用户和权限管理   431
29.4.1 创建用户   432
29.4.2 删除用户   432
29.4.3 重命名用户   432
29.4.4 GRANT 和REVOKE 命令   432
29.4.5 查看权限   437
29.5 限制用户资源   437
29.6 保护MySQL 连接   437
29.6.1 授权选项   438
29.6.2 SSL 选项  439
29.6.3 启动启用SSL 的MySQL服务器   440
29.6.4 使用启用SSL 的客户端进行连接  440
29.6.5 在my.cnf 文件中存储SSL 选项  440
29.7 小结   441
第30 章 结合使用PHP 与MySQL  442
30.1 进行安装的预备工作   443
30.1.1 在Linux/UNIX 中启用mysqli 扩展    443
30.1.2 在Windows 中启用mysqli扩展   443
30.1.3 使用MySQL 本地驱动程序  443
30.1.4 管理用户权限   443
30.1.5 处理示例数据   444
30.2 使用mysqli 扩展   444
30.2.1 建立和断开连接   444
30.2.2 处理连接错误   445
30.2.3 获得错误信息   445
30.2.4 在单独的文件中存储连接信息   446
30.2.5 保护连接信息  447
30.3 与数据库交互  447
30.3.1 向数据库发送查询   447
30.3.2 解析查询结果  449
30.3.3 确定所选择的行和受影响的行   450
30.3.4 处理准备语句  451
30.4 执行数据库事务  455
30.4.1 启用自动提交模式   455
30.4.2 提交事务   455
30.4.3 回滚事务  456
30.5 小结   456
第31 章 PDO 介绍  457
31.1 为什么还要另一种数据库抽象层   458
31.2 使用PDO   458
31.2.1 安装PDO   459
31.2.2 PDO 的数据库选项  459
31.2.3 连接到数据库服务器并选择数据库  460
31.2.4 错误处理  461
31.2.5 获取和设置属性   463
31.2.6 查询执行  463
31.2.7 准备语句介绍  464
31.2.8 获取数据  467
31.2.9 设置绑定列  469
31.2.10 处理事务  470
31.3 小结  470
第32 章 存储例程   471
32.1 应当使用存储例程吗  471
32.1.1 存储例程的优点  471
32.1.2 存储例程的缺点  472
32.2 MySQL 如何实现存储例程   472
32.2.1 创建存储例程  472
32.2.2 声明和设置变量   474
32.2.3 执行存储例程   475
32.2.4 创建和使用多语句存储例程   476
32.2.5 从另一个例程中调用例程   481
32.2.6 修改存储例程  482
32.2.7 删除存储例程  482
32.2.8 查看例程状态  482
32.2.9 查看例程的创建语法   483
32.2.10 条件处理  484
32.3 将例程集成到Web 应用程序  484
32.3.1 创建员工奖金界面   484
32.3.2 获取多条记录   485
32.4 小结   485
第33 章 MySQL 触发器   486
33.1 介绍触发器  486
33.1.1 为什么使用触发器   486
33.1.2 在事件前采取行动   487
33.1.3 在事件后采取行动   487
33.1.4 前触发器和后触发器   488
33.2 MySQL 对触发器的支持   488
33.2.1 创建触发器   488
33.2.2 查看现有的触发器   490
33.2.3 修改触发器   491
33.2.4 删除触发器  491
33.3 将触发器集成到Web 应用程序   491
33.4 小结   492
第34 章 视图   493
34.1 视图介绍   493
34.2 MySQL 对视图的支持  494
34.2.1 创建和执行视图  494
34.2.2 查看视图信息  498
34.2.3 修改视图  499
34.2.4 删除视图  499
34.2.5 更新视图  500
34.3 将视图结合到Web 应用程序中   500
34.4 小结  501
第35 章 实用数据库查询   502
35.1 示例数据   502
35.2 用PEAR 创建表格输出  503
35.2.1 安装HTML_Table   503
35.2.2 创建简单表  503
35.2.3 创建更可读的行输出   505
35.2.4 根据数据库数据创建表  505
35.3 排序输出  506
35.4 创建分页输出   507
35.5 列出页码   509
35.6 用子查询查询多个表   510
35.6.1 用子查询完成比较   511
35.6.2 用子查询确定存在性   511
35.6.3 用子查询维护数据库   512
35.6.4 在PHP 中使用子查询   512
35.7 用游标迭代结果集  513
35.7.1 游标基础  513
35.7.2 创建游标  513
35.7.3 打开游标  514
35.7.4 使用游标  514
35.7.5 关闭游标  515
35.7.6 在PHP 中使用游标  515
35.8 小结  515
第36 章 索引和搜索  516
36.1 数据库索引   516
36.1.1 主键索引   516
36.1.2 唯一索引   517
36.1.3 常规索引   518
36.1.4 全文索引   519
36.1.5 索引最佳实践   522
36.2 基于表单的搜索   522
36.2.1 执行简单搜索   523
36.2.2 扩展搜索功能   524
36.2.3 完成全文搜索   525
36.3 小结  526
第37 章 事务  527
37.1 什么是事务   527
37.2 MySQL 的事务功能    528
37.2.1 系统需求  528
37.2.2 表创建    528
37.3 示例项目   528
37.3.1 创建表并添加示例数据   529
37.3.2 执行示例事务  529
37.3.3 用法提示  531
37.4 用PHP 构建事务应用程序  531
37.5 小结   533
第38 章 导入和导出数据   534
38.1 示例表  534
38.2 使用数据定界   534
38.3 导入数据    535
38.3.1 利用LOAD DATA INFILE导入数据   535
38.3.2 用mysqlimport 导入数据   538
38.3.3 用PHP 加载表数据  540
38.4 导出数据  541
38.5 小结   543
· · · · · · (收起)

读后感

评分

任何一本书都不可能让所有的读者满意。因为每个读者的情况都不同。我之前没有读过其他的php和mysql的书。在国内这方面的好书确实不太多。想了很久,在书店浏览了一下对比了其他同类的书才打算读。 内容范围比较全。所以就会使深度有所降低,对一些问题的说明也不够深入。但作...  

评分

PHPgn MYSQL5程序设计这本书 还可以,不过…… 仁者见仁,智者见智! 学习是好事,要多给自己充电学习, 书名: PHP与MySQL 5程序设计 页数: 634 译者: 朱涛江 定价: 79 出版社: 人民邮电出版社 出版年: 2007年01月 ................................................  

评分

PHP与MySQL 5程序设计,还可以的,内容也很全面。值得大家看一看,学不同的教材,对自己也是一种收获。 PHP与MySQL 5程序设计,还可以的,内容也很全面。值得大家看一 PHP与MySQL 5程序设计,还可以的,内容也很全面。值得大家看一看,学不同的教材,对自己也是一种收获。 PHP...  

评分

任何一本书都不可能让所有的读者满意。因为每个读者的情况都不同。我之前没有读过其他的php和mysql的书。在国内这方面的好书确实不太多。想了很久,在书店浏览了一下对比了其他同类的书才打算读。 内容范围比较全。所以就会使深度有所降低,对一些问题的说明也不够深入。但作...  

评分

阅读时间: 2013年10月26日 -- 2013年10月28日 简单的把这本书翻了下,虽然说写了这么久的PHP了,但是感觉一直没有系统的去学习,在公司看到了这本书,大体翻了一下,还有很多内容可以好好学习下.时间比较紧张,没有仔细的阅读,里面的东西大部分比较基础,抛砖引玉的一本书.  

用户评价

评分

这本书的封面设计简直是一场视觉的灾难,那种老旧的排版和陈旧的配色,让人一眼就觉得这是一本过时的技术手册,而不是一本关于前沿编程的指南。我当时在书店里翻阅时,光是目录部分就让我感到沮丧。它似乎把所有的内容都堆砌在一起,缺乏清晰的逻辑结构,读起来肯定会让人抓狂。特别是涉及到数据库连接的部分,它的介绍方式显得异常晦涩,没有提供任何现代化的、简洁的示例代码,反而用了大量冗长且令人费解的文字来解释一些基础概念,这对于想快速上手或者寻求效率的开发者来说,简直是噩梦。我甚至怀疑作者是否真正理解了当下PHP生态圈的快速迭代,内容停留在多年前的某个时间点,让人感觉像是翻阅一本历史文物而非实用工具书。如果有人期待这本书能带来任何关于现代框架或安全最佳实践的洞察,那他们注定会失望,因为从目录的组织方式来看,这本书更像是一本活化石,展示着过去技术是如何运作的,而不是如何利用它们来构建健壮的现代应用。

评分

初次上手这本书时,我最大的困惑在于其对代码规范的漠视程度令人发指。随处可见的便是那种教科书式的、缺乏实战经验的代码片段,它们冗长、重复,充满了被现代编程语言特性所淘汰的低效写法。例如,在处理表单验证的章节中,作者似乎沉迷于手写大量的 `if/else` 结构,完全没有提及任何可以简化代码、提高可读性的函数或类库。这让我感觉自己像是在学习一门已经被废弃的古老方言。更糟糕的是,书中对错误处理的讨论极其肤浅,很多潜在的运行时异常被轻描淡写地带过,完全没有给出如何在生产环境中进行健壮错误日志记录和用户友好的反馈机制的指导。对于一个希望从理论转向实践的读者来说,这本书提供的代码范例不仅难以维护,而且在安全和性能方面都存在巨大的隐患,简直是反面教材的典范,让人怀疑作者是否真的有能力指导新人进入专业开发领域。

评分

这本书在理论层面的阐述也显得力不从心,尤其是在讲解面向对象编程(OOP)思想与数据库交互模式时,几乎是完全脱节的。它用一种非常僵硬和程序化的方式来解释类和对象,完全没有触及到设计模式在实际项目中的应用价值,例如工厂模式或单例模式在数据库连接池管理中的重要性。读者读完这些章节后,得到的可能只是对语法规则的机械记忆,而不是对软件设计原则的深刻理解。当它尝试将PHP与MySQL结合时,讲解的连接和查询逻辑仍然停留在非常低级的、过程化的层面,完全没有引入任何关于ORM(对象关系映射)的讨论,这在今天的Web开发中几乎是不可想象的。这本书似乎固执地停留在“如何让程序跑起来”的阶段,而完全忽视了“如何写出优雅、可扩展、易于维护的程序”这一核心命题,对于追求高质量代码的读者而言,这无疑是种折磨。

评分

我尝试着去寻找一些关于性能优化的章节,期望能从中找到关于查询优化或缓存策略的宝贵经验,结果却发现那部分内容极其单薄且过时。书中提到的优化建议,比如对所有查询都使用默认的连接设置,或者完全依赖数据库自身的低效索引策略,在今天看来简直是灾难性的。对于像大表查询、事务管理中的锁竞争等关键问题,这本书采取了回避或者一笔带过的态度,仿佛这些复杂的现实问题不存在一样。更不用提任何关于异步处理、非阻塞I/O或者现代数据库集群架构的讨论了,整本书弥漫着一种“单体、同步、低并发”的时代气息。对于任何一个需要处理真实世界高负载应用的开发者来说,这本书提供的优化知识几乎没有参考价值,它更像是一份记录了上世纪末期小型网站搭建指南的文献,与现代互联网的性能要求格格不入。

评分

最让我感到不适的是这本书的“配套资源”——如果勉强能称之为资源的话。随书附带的那些老旧的练习题和项目案例,它们所依赖的环境配置和外部库版本,在我尝试复现时就遇到了无数的兼容性问题。安装和配置所需的运行环境本身就比学习书本内容要耗费更多的时间和精力,许多链接指向的资源早已失效,甚至一些用于演示的第三方脚本都无法在当前的PHP版本下顺利运行。这不仅打断了学习的流畅性,更让人感到极度的挫败感。这本书似乎没有经过任何现代化的更新和维护,它以一种非常不负责任的态度将过时的知识和无法复现的示例抛给读者,完全没有考虑到技术生态的演进。购买这本书,就像是购买了一张去往过去时空的单程票,但那里的风景早已面目全非,徒留一堆需要自己去修复的破旧物件。

评分

为什么这么好书,在第二章也不能解决php环境配置问题呢;... ...攻克php环境配置,是我买这本书的原因。现在问题仍没有解决,可收获到这本全面的php领域知识,还是划得来的;奋进吧,

评分

有基础,也有深入,是比较新手入门的不错选择,有空需要读下,梳理一下基础知识

评分

有基础,也有深入,是比较新手入门的不错选择,有空需要读下,梳理一下基础知识

评分

半吊子的书还算适合半吊子的我,无基础的不好理解,有基础的太容易 2017.2.8-2017.3.5,PHP部分,1-24章,除16,17,24,章看完

评分

适合入门,在跟着manual做例子头昏脑胀的时候插点中文概念解释挺好的

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2026 book.wenda123.org All Rights Reserved. 图书目录大全 版权所有