《细说PHP(附DVD光盘1张)》(高洛峰)【摘要 书评 试读】
第1章 LAMP网站构建
1.1 网站软件简介
1.1.1 B/S软件体系结构
1.1.2 动态网站介绍
1.2 动态网站软件开发所需的Web构件
1.2.1 客户端浏览器
1.2.2 扩展超文本标记语言XHTML
1.2.3 层叠样式表CSS
1.2.4 XML和XSLT
1.2.5 客户端脚本编程语言
1.2.6 Web服务器
1.2.7 服务器端脚本编程语言
1.2.8 数据库管理系统
1.3 网站软件开发平台及工作流程
1.3.1 动态网站开发平台
1.3.2 动态网站开发平台技术比较
1.4 客户端与服务器端交互的工作原理
1.4.1 HTTP协议是什么
1.4.2 Web的工作原理
1.5 LAMP网站开发组合概述
1.5.1 Linux操作系统
1.5.2 Web服务器Apache
1.5.3 MySQL数据库管理系统
1.5.4 PHP后台脚本编程语言
1.5.5 LAMP发展趋势
1.6 小结
自测题
第2章 搭建PHP的开发环境
2.1 环境安装对操作系统的选择
2.1.1 选择网站运营的操作系统
2.1.2 选择网站开发的操作系统
2.2 Linux系统下源代码包方式安装环境
2.2.1 安装前准备
2.2.2 编译安装过程介绍
2.2.3 安装libxml2最新库文件
2.2.4 安装libmcrypt最新库文件
2.2.5 安装zlib最新库文件
2.2.6 安装libpng最新库文件
2.2.7 安装jpeg6最新库文件
2.2.8 安装freetype最新库文件
2.2.9 安装autoconf最新的库文件
2.2.10 安装最新的GD库文件
2.2.11 安装新版本的Apache服务器
2.2.12 安装MySQL数据库管理系统
2.2.13 安装最新版本的PHP模块
2.2.14 安装Zend加速器
2.2.15 phpMyAdmin的安装
2.2.16 phpMyAdmin的配置
2.3 在Windows系统上安装Web工作环境
2.3.1 安装前准备
2.3.2 安装Apache
2.3.3 安装MySQL
2.3.4 安装PHP
2.3.5 安装Zend加速器
2.4 Window系统上安装集成开发环境
2.4.1 安装前准备
2.4.2 安装步骤
2.4.3 环境测试
2.5 小结
自测题
第3章 Apache服务器的配置
3.1 Apache简介
3.1.1 Apache的诞生
3.1.2 Apache的特性
3.2 Apache服务器的目录结构
3.3 Apache服务器配置文件结构说明
3.3.1 Apache服务器配置文件位置
3.3.2 配置文件的语法
3.4 Apache服务器全局参数设置
3.4.1 在主配置文件httpd.conf中的全局参数
3.4.2 附加配置文件httpd-default.conf中的全局参数
3.4.3 附加配置文件httpd-mpm.conf中的全局参数
3.5 Apache服务器中使用配置段(容器)
3.5.1 文件系统容器
3.5.2 网络空间容器
3.5.3 通配符和正则表达式
3.5.4 如何选择使用容器
3.6 .htaccess文件和访问限制
3.6.1 设置路径别名
3.6.2 在.htaccess文件中设置目录的访问限制
3.7 设置虚拟主机
3.7.1 基于IP地址的虚拟主机
3.7.2 基于主机名的虚拟主机
3.8 小结
自测题
第4章 XHTML和CSS网页标准化布局
4.1 网页制作概述
4.1.1 XHTML基础
4.1.2 CSS基础
4.2 HTML的设计与应用
4.2.1 XHTML语言的语法
4.2.2 XHTML文件的主体结构
4.2.3 文字版面的编辑
4.2.4 创建图像和链接
4.2.5 使用XHTML表格
4.2.6 XHTML框架结构
4.2.7 XHTML表单设计
4.3 CSS的设计与应用
4.3.1 将样式表加入到HTML中
4.3.2 CSS选择符
4.3.3 常见的样式属性和值
4.4 DIV+CSS网页标准化布局
4.4.1 DIV+CSS的优势
4.4.2 “无意义”的元素div和span
4.4.3 区块框模型
4.4.4 区块框定位
4.4.5 区块框浮动
4.4.6 使用区块框设计页面布局
4.5 XHTML和CSS网站首页面布局实例
4.5.1 XHTML文件的设计
4.5.2 CSS文件设计
4.6 小结
自测题
第5章 PHP的基本语法
5.1 PHP在Web开发中的应用
5.2 第一个PHP脚本程序
5.2.1 PHP语言标记
5.2.2 指令分隔符“分号”
5.2.3 程序注释
5.2.4 在程序中使用空白的处理
5.3 变量
5.3.1 变量的声明
5.3.2 变量的命名
5.3.3 可变变量
5.3.4 变量的引用赋值
5.4 变量的类型
5.4.1 类型介绍
5.4.2 布尔型(boolean)
5.4.3 整型(integer)
5.4.4 浮点型(float或double)
5.4.5 字符串(String)
5.4.6 数组(Array)
5.4.7 对象(Object)
5.4.8 资源类型(Resource)
5.4.9 NULL类型
5.4.10 伪类型介绍
5.4.11 数据类型之间相互转换
5.5 常量
5.5.1 常量的定义和使用
5.5.2 常量和变量
5.5.3 预定义常量
5.6 PHP中的运算符
5.6.1 算术运算符
5.6.2 字符串运算符
5.6.3 赋值运算符
5.6.4 比较运算符
5.6.5 逻辑运算符
5.6.6 位运算符
5.6.7 其他运算符
5.6.8 运算符的优先级
5.7 表达式
5.8 小结
自测题
第6章 PHP的语言结构
6.1 流程控制概述
6.2 分支结构
6.2.1 单一条件分支结构(if)
6.2.2 双向条件分支结构(else子句)
6.2.3 多向条件分支结构(elseif子句)
6.2.4 多向条件分支结构(switch语句)
6.2.5 巢状条件分支结构
6.2.6 条件分支结构应用实例(简单计算器)
6.3 循环结构
6.3.1 while语句
6.3.2 dowhile循环
6.3.3 for语句
6.3.4 特殊的流程控制语句
6.4 PHP中的函数
6.4.1 函数的定义
6.4.2 自定义函数
6.4.3 函数的工作原理和结构化编程
6.4.4 PHP变量的范围
6.4.5 参数的传递
6.4.6 变量函数
6.4.7 递归函数
6.4.8 使用自定义函数库
6.4.9 使用系统函数库
6.5 小结
自测题
第7章 PHP中的数组与数据结构
7.1 数组的概述
数组的分类
7.2 数组的定义
7.2.1 直接赋值的方式声明数组
7.2.2 使用array()语言结构新建数组
7.2.3 多维数组的声明
7.3 数组的遍历
7.3.1 使用for语句循环遍历数组
7.3.2 使用foreach语句遍历数组
7.3.3 联合使用list( )、each( )和while循环遍历数组
7.3.4 使用数组的内部指针控制函数遍历数组
7.4 预定义数组
7.4.1 服务器变量:$_SERVER
7.4.2 环境变量:$_ENV
7.4.3 HTTP GET变量:$_GET
7.4.4 HTTP POST变量:$_POST
7.4.5 request变量:$_REQUEST
7.4.6 HTTP文件上传变量:$_FILES
7.4.7 HTTP Cookies:$_COOKIE
7.4.8 Session变量:$_SESSION
7.4.9 Global变量:$GLOBALS
7.5 数组的相关处理函数
7.5.1 数组的键/值操作函数
7.5.2 统计数组元素的个数和唯一性
7.5.3 使用回调函数处理数组的函数
7.5.4 数组的排序函数
7.5.5 拆分、合并、分解和接合数组
7.5.6 数组与数据结构
7.5.7 其他有用的数组处理函数
7.6 小结
自测题
第8章 PHP面向对象的程序设计
8.1 面向对象的介绍
8.1.1 类和对象之间的关系
8.1.2 面向对象的程序设计
8.2 如何抽象一个类
8.2.1 类的声明
8.2.2 成员属性
8.2.3 成员方法
8.3 通过类实例化对象
8.3.1 创建对象
8.3.2 对象类型在内存中的分配
8.3.3 对象中成员的访问
8.3.4 特殊的对象引用“$this”
8.3.5 构造方法与析构方法
8.4 封装性
8.4.1 设置私有成员
8.4.2 私有成员的访问
8.4.3 __set()、__get()、__isset()和__unset()四个方法
8.5 继承性
8.5.1 类继承的应用
8.5.2 访问类型控制
8.5.3 子类中重载父类的方法
8.6 常见的关键字和魔术方法
8.6.1 final关键字的应用
8.6.2 static和const关键字的使用
8.6.3 克隆对象
8.6.4 类中通用的方法__toString()
8.6.5 通过__call()方法处理错误调用
8.6.6 自动加载类
8.6.7 对象串行化
8.7 抽象类与接口
8.7.1 抽象方法和抽象类
8.7.2 接口技术
8.8 多态性的应用
8.9 小结
自测题
第9章 字符串处理与正则表达式
9.1 字符串的处理介绍
9.1.1 字符串的处理方式
9.1.2 字符串类型的特点
9.2 常用的字符串输出函数
9.3 常用的字符串格式化函数
9.3.1 去除空格和字符串填补函数
9.3.2 字符串大小写的转换
9.3.3 和HTML标签相关的字符串格式化
9.3.4 其他字符串格式化函数
9.4 字符串比较函数
9.4.1 按字节顺序进行字符串比较
9.4.2 按自然排序进行字符串比较
9.5 正则表达式在字符串处理中的应用
9.5.1 正则表达式简介
9.5.2 正则表达式的语法规则
9.6 与Perl兼容的正则表达式函数
9.6.1 字符串的匹配与查找
9.6.2 字符串的替换
9.6.3 字符串的分割和连接
9.7 文章发布操作示例
9.8 小结
自测题
第10章 PHP常用功能模块
10.1 错误和异常处理
10.1.1 错误类型和基本的调试方法
10.1.2 错误日志
10.1.3 异常处理
10.2 日期和时间
10.2.1 UNIX时间戳
10.2.2 在PHP中获取日期和时间
10.2.3 日期和时间格式化输出
10.2.4 修改PHP的默认时区
10.2.5 使用微秒计算PHP脚本执行时间
10.3 动态图像处理
10.3.1 PHP中GD库的使用
10.3.2 画布管理
10.3.3 设置颜色
10.3.4 生成图像
10.3.5 绘制图像
10.3.6 在图像中绘制文字
10.3.7 在PHP中实现验证码类的设计
10.4 小结
自测题
第11章 文件系统处理
11.1 文件系统概述
11.1.1 文件类型
11.1.2 文件的属性
11.2 目录的基本操作
11.2.1 解析目录路径
11.2.2 遍历目录
11.2.3 统计目录大小
11.2.4 建立和删除目录
11.2.5 复制或移动目录
11.3 文件的基本操作
11.3.1 文件的打开与关闭
11.3.2 写入文件
11.3.3 读取文件内容
11.3.4 访问远程文件
11.3.5 移动文件指针
11.3.6 文件的锁定机制
11.3.7 文件的一些基本操作函数
11.4 文件的上传与下载
11.4.1 文件上传
11.4.2 处理多个文件上传
11.4.3 文件下载
11.5 文件系统项目实例
11.5.1 功能分析
11.5.2 系统功能设计
11.5.3 实例代码实现
11.6 小结
自测题
第12章 MySQL数据库设计
12.1 MySQL数据库管理
12.1.1 数据库管理系统
12.1.2 结构化查询语言SQL1
12.1.3 MySQL数据库的连接与关闭
12.1.4 创建、选择及查看数据库
12.2 MySQL数据库中数据表的设计
12.2.1 数据表(Table)
12.2.2 数据值和列类型
12.2.3 数据字段属性
12.2.4 创建、修改及删除表
12.2.5 数据表的类型及存储位置
12.2.6 数据表的默认字符集1
12.2.7 创建索引2
12.3 数据库的设计步骤
12.3.1 需求分析
12.3.2 概念设计
12.3.3 逻辑设计
12.4 SQL语言设计
12.4.1 执行DDL命令操作数据对象
12.4.2 使用DML命令操作数据表中的数据记录
12.4.3 通过DQL命令查询数据表中的数据
12.5 使用PHP脚本向MySQL服务器发送SQL
12.5.1 在PHP脚本中连接MySQL服务器
12.5.2 在PHP程序中选择已创建的数据库
12.5.3 执行SQL命令
12.5.4 在PHP脚本中处理SELECT查询结果集
12.6 小结
自测题
第13章 PHP的mysqli扩展
13.1 启用mysqli扩展模块
13.2 使用mysqli类
13.2.1 连接MySQL服务器
13.2.2 处理连接错误报告
13.2.3 关闭与MySQL服务器连接
13.2.4 执行SQL命令
13.3 使用mysqli_result类
13.3.1 创建结果集对象
13.3.2 回收查询内存
13.3.3 从结果集中解析数据
13.3.4 从结果集中获取数据列的信息
13.3.5 一次执行多条SQL命令
13.4 使用mysqli_stmt类
13.4.1 获取预处理语句对象
13.4.2 绑定参数
13.4.3 执行准备好的语句
13.4.4 回收资源
13.4.5 简单的示例分析
13.4.6 使用预处理语句处理SELECT查询结果
13.5 数据库事务
13.5.1 事务处理
13.5.2 构建事务应用程序
13.6 MVC模式实现商品管理系统
13.6.1 MVC设计模式
13.6.2 商品管理系统的设计与实现
13.7 小结
自测题
第14章 数据库抽象层PDO
14.1 PDO所支持的数据库
14.2 PDO的安装
14.3 创建PDO对象
14.3.1 以多种方式调用构造方法
14.3.2 PDO对象中的成员方法
14.4 使用PDO对象
14.4.1 调整PDO的行为属性
14.4.2 PDO处理PHP程序和数据库之间的数据类型转换
14.4.3 PDO的错误处理模式
14.4.4 使用PDO执行SQL语句
14.5 PDO对预处理语句的支持
14.5.1 了解PDOStatement对象
14.5.2 准备语句
14.5.3 绑定参数
14.5.4 执行准备好的查询
14.5.5 获取数据
14.5.6 大数据对象的存取
14.6 PDO的事务处理
14.7 小结
自测题
第15章 会话控制
15.1 为什么要使用会话控制
15.2 会话跟踪的方式
15.3 Cookie的应用
15.3.1 Cookie概述
15.3.2 向客户端电脑中设置Cookie
15.3.3 在PHP脚本中读取Cookie的资料内容
15.3.4 数组形态的Cookie应用
15.3.5 删除Cookie
15.3.6 基于Cookie的用户登录模块
15.4 Session的应用
15.4.1 Session概述
15.4.2 配置Session
15.4.3 Session的声明与使用
15.4.4 注册一个会话变量和读取Session
15.4.5 注销变量与销毁Session
15.4.6 传递Session ID
15.5 一个简单的邮件系统
15.5.1 为邮件系统准备数据
15.5.2 编码实现邮件系统
15.5.3 邮件系统执行说明
15.6 小结
自测题
第16章 PHP的模板技术Smarty
16.1 什么是模板引擎
16.2 编写自己的模板引擎
16.2.1 创建自己的模板引擎类
16.2.2 使用自已的模板引擎
16.2.3 自定义模板的使用示例分析2
16.3 选择Smarty模板引擎
16.4 安装Smarty及初使化配置
16.4.1 安装Smarty
16.4.2 初使化Smarty类库的默认设置
16.4.3 第一个Smarty的简单示例
16.5 Smarty在应用程序逻辑层的使用步骤
16.6 Smarty模板中的程序逻辑
16.6.1 模板中的注释
16.6.2 模板中变量的声明
16.6.3 在模板中输出从PHP分配的变量
16.6.4 模板中变量的数学计算
16.6.5 在模板中使用{$smarty}保留变量
16.6.6 变量调解器
16.6.7 模板的控制结构
16.6.8 在模板中包含子模板
16.7 为Smarty模板创建配置文件
16.7.1 配置文件语法格式
16.7.2 加载配置文件
16.7.3 引用配置文件中的变量
16.8 Smarty处理页面缓存
16.8.1 在Smarty中控制缓存
16.8.2 每个页面多个缓存
16.8.3 为缓存实例消除处理开销
16.8.4 清除缓存
16.8.5 关闭局部缓存
16.9 应用Smarty实现分页示例
16.9.1 准备工作
16.9.2 设计数据库操作类
16.9.3 设计分页操作类
16.9.4 PHP的程序逻辑层
16.9.5 Smarty模板的表现层
16.10 小结
自测题
第17章 内容管理系统(CMS)
17.1 Web软件开发流程概述
17.1.1 Web开发团队的成员
17.1.2 Web软件开发流程
17.1.3 项目开发规范
17.2 需求分析
17.2.1 CMS简介
17.2.2 用户行为分析
17.2.3 系统目标
17.2.4 系统特点
17.3 系统功能预览
17.3.1 CMS系统安装
17.3.2 登录管理平台
17.3.3 常规设置管理
17.3.4 友情链接管理
17.3.5 图片管理
17.3.6 栏目管理
17.3.7 文章管理
17.3.8 用户管理
17.3.9 网站首页
17.3.10 文章列表页面
17.3.11 文章内容页面
17.4 数据库设计
17.4.1 数据库需求分析
17.4.2 数据表关系
17.5 系统架构
17.5.1 系统体系结构
17.5.2 管理平台的文件结构
17.5.3 网站前台模板风格的文件结构
17.6 常用的功能模块开发
17.6.1 系统安装模块设计
17.6.2 管理平台(后台)的模块设计
17.6.3 无限分类模块设计
17.6.4 网站首页面的设计
17.7 小结
附录A PHP配置文件详解