图书目录

目    录 

 

 第1章  PHP入门   1

1.1  Web技术基础   1

1.1.1  Web技术概述   1

1.1.2  Web工作原理   3

1.1.3  主流的Web开发技术   3

1.1.4  常用的前端开发语言   4

1.2  PHP基础知识   7

1.2.1  PHP概述   7

1.2.2  PHP的优势   7

1.2.3  PHP的应用领域   7

1.2.4  常用的PHP开发工具   7

1.2.5  如何学好PHP   8

1.2.6  PHP学习资源   8

1.3  PHP开发环境的搭建   11

1.3.1  WAMP环境的搭建   11

1.3.2  LAMP环境的搭建   16

1.3.3  扩展库   18

1.4  第一个PHP程序   20

1.5  调试与错误处理   21

1.5.1  使用自带的报错功能   21

1.5.2  引进调试工具   22

1.5.3  调试业务逻辑错误   22

1.5.4  调试非功能性错误   23

1.6  本章小结   23

1.7  思考和练习   23

 第2章  PHP语法和函数   25

2.1  PHP的语法风格   25

2.1.1  PHP标记   25

2.1.2  PHP注释   26

2.2  标识符与关键字   26

2.2.1  标识符   27

2.2.2  关键字   27

2.3  PHP常量   28

2.3.1  常量概述   28

2.3.2  预定义常量   29

2.4  PHP变量   31

2.4.1  变量的声明和使用   31

2.4.2  PHP的数据类型   32

2.4.3  检测变量的数据类型   33

2.4.4  可变变量   34

2.4.5  变量的作用域   34

2.5  变量类型的转换   36

2.5.1  自动类型转换   36

2.5.2  强制类型转换   37

2.6  PHP运算符与表达式   38

2.6.1  运算符的类型   38

2.6.2  运算符的优先级   42

2.7  流程控制语句   43

2.7.1  选择结构   44

2.7.2  循环结构   47

2.8  函数   52

2.8.1  定义和调用函数   52

2.8.2  在函数间传递参数   53

2.8.3  从函数中返回值   54

2.8.4  变量函数   55

2.8.5  对函数的引用   55

2.8.6  取消引用   56

2.9  本章小结   56

2.10  思考和练习   57

 第3章  字符串   58

3.1  创建和访问字符串   58

3.1.1  创建字符串   58

3.1.2  在字符串中引用变量   59

3.1.3  自定义分隔符   60

3.1.4  求字符串的长度和单词个数   61

3.1.5  访问字符串中的字符   61

3.2  搜索字符串   62

3.2.1  用strstr()函数搜索字符串   62

3.2.2  用strpos()和strrpos()函数定位字符串位置   62

3.2.3  用substr_count()函数统计字符串的出现次数   63

3.2.4  用strpbrk()函数搜索字符集   64

3.3  在字符串中进行字符替换   64

3.3.1  用str_replace()函数替换全部搜索字符串   64

3.3.2  用substr_replace()函数替换字符串的部分内容   64

3.3.3  用strtr()函数变换字符   65

3.4  格式化字符串   65

3.4.1  通用的格式化函数printf()和sprintf()   65

3.4.2  删除空白符的函数trim()、ltrim()和rtrim()   69

3.4.3  填充字符串函数str_pad()   70

3.4.4  自动换行函数wordwrap()   70

3.4.5  格式化数值函数number_format()   71

3.5  字母大小写转换   72

3.6  本章小结   73

3.7  思考和练习   74

 第4章  数组   75

4.1  数组概述   75

4.2  数组的创建与访问   76

4.2.1  创建数组   76

4.2.2  访问数组的元素   76

4.2.3  修改元素值   77

4.2.4  新增数组元素   77

4.2.5  输出所有数组元素   78

4.2.6  统计数组中元素的个数   79

4.2.7  逐个访问数组的元素   80

4.2.8  切割数组   82

4.3  用foreach遍历数组   83

4.3.1  用foreach遍历数组的每个值   83

4.3.2  用foreach遍历数组的键和值   83

4.3.3  用foreach遍历修改数组元素的值   84

4.4  多维数组   85

4.4.1  创建多维数组   85

4.4.2  访问多维数组的元素   86

4.4.3  多维数组的遍历   86

4.5  数组的操作   88

4.5.1  数组排序   88

4.5.2  添加和删除数组元素   92

4.5.3  合并数组   96

4.5.4  数组与字符串之间的转换   97

4.5.5  把数组转换为变量列表   98

4.6  本章小结   99

4.7  思考和练习   99

 第5章  正则表达式   101

5.1  什么是正则表达式   101

5.1.1  正则表达式的概念   101

5.1.2  正则表达式的使用场景   102

5.2  正则表达式的语法规则   102

5.3  PHP中的模式匹配   107

5.4  正则表达式的使用   107

5.4.1  匹配字面字符   108

5.4.2  用字符类匹配字符类型   108

5.4.3  多次匹配同一字符   109

5.4.4  贪婪匹配法和非贪婪匹配法   109

5.4.5  用子模式分组模式   109

5.4.6  引用前面的子模式匹配串   110

5.4.7  匹配多个模式   110

5.5  用preg_match_all()函数实现多次匹配   111

5.6  用preg_grep()函数搜索数组   114

5.7  文本替换   115

5.7.1  用preg_replace()函数替换文本   115

5.7.2  用preg_replace_callback()函数替换文本   117

5.8  本章小结   117

5.9  思考和练习   118

 第6章  PHP与Web页面的交互   119

6.1  表单   120

6.1.1  创建表单   120

6.1.2  表单元素   120

6.2  将表单保存为HTML文件   123

6.3  获取表单数据的两种方法   125

6.3.1  通过POST方式提交表单   125

6.3.2  通过GET方式提交表单   126

6.4  PHP接收参数的常用方法   126

6.4.1  通过$_POST[]接收表单数据   126

6.4.2  通过$_GET[]接收表单数据   127

6.5  在网页中嵌入PHP脚本   127

6.5.1  在HTML标记中添加PHP脚本   127

6.5.2  对表单元素的value属性进行赋值   127

6.6  在PHP中获取表单数据   128

6.6.1  获取基本表单元素的值   128

6.6.2  获取单选按钮的值   129

6.6.3  获取复选框的值   130

6.6.4  获取下拉列表框/菜单列表框的值   130

6.6.5  获取文件域的值   131

6.7  对URL传递的参数进行编码和解码   132

6.7.1  对URL传递的参数进行编码   132

6.7.2  对URL传递的参数进行解码   133

6.8  Web服务器端的其他数据采集方法   134

6.8.1  预定义变量$_REQUEST   134

6.8.2  预定义变量$_SERVER   134

6.9  文件上传   136

6.9.1  配置php.ini以实现PHP文件上传功能   136

6.9.2  文件上传函数   137

6.9.3  多文件上传   139

6.10  HTTP的使用   140

6.10.1  HTTP请求   140

6.10.2  HTTP响应   141

6.10.3  修改HTTP响应方式   143

6.11  本章小结   144

6.12  思考和练习   144

 第7章  日期和时间   145

7.1  日期和时间的处理   145

7.1.1  时间戳   145

7.1.2  获取当前日期和时间   146

7.1.3  创建时间戳   146

7.2  转换时间戳   148

7.3  格式化日期   149

7.4  检查日期值   152

7.5  毫秒的使用   152

7.6  DataTime类的使用   153

7.7  本章小结   155

7.8  思考和练习   156

 第8章  Cookie和Session   157

8.1  管理Cookie   157

8.1.1  了解Cookie   157

8.1.2  创建Cookie   158

8.1.3  读取Cookie   159

8.1.4  删除Cookie   160

8.1.5  Cookie的生命周期   161

8.2  管理Session   161

8.2.1  了解Session   161

8.2.2  创建Session   162

8.2.3  设置Session的有效时间   163

8.2.4  通过Session对用户操作权限进行判断   164

8.2.5  删除和销毁Session   167

8.2.6  Session和Cookie的区别   168

8.2.7  Session和Cookie的应用   169

8.3  Session的高级应用   169

8.3.1  Session临时文件   169

8.3.2  Session缓存   169

8.3.3  Session自动回收   170

8.3.4  php.ini中的Session配置   171

8.4  本章小结   172

8.5  思考和练习   173

 第9章  数据库编程   174

9.1  MySQL简介   174

9.1.1  数据库基本概念   174

9.1.2  关系数据库常用术语   175

9.2  MySQL的启动与连接   175

9.2.1  启动MySQL服务   175

9.2.2  连接和断开MySQL数据库   177

9.2.3  配置Path环境变量   178

9.3  操作MySQL数据库   179

9.3.1  创建和查看数据库   179

9.3.2  删除数据库   180

9.3.3  选择数据库   180

9.3.4  综合实例   181

9.4  操作数据表   184

9.4.1  创建数据表   184

9.4.2  查看表结构   185

9.4.3  修改表结构   186

9.4.4  重命名数据表   187

9.4.5  删除数据表   187

9.5  数据记录的更新操作   187

9.5.1  添加数据记录   187

9.5.2  查询数据记录   188

9.5.3  修改数据记录   189

9.5.4  删除数据记录   189

9.6  MySQL数据库的备份与还原   189

9.6.1  使用mysqldump命令备份数据库   189

9.6.2  使用mysql命令还原数据库   190

9.7  本章小结   190

9.8  思考和练习   190

 第10章  用PHP操作MySQL数据库   191

10.1  PHP访问MySQL数据库的基本步骤   191

10.2  PHP操作MySQL数据库的方法   192

10.2.1  连接MySQL服务器   193

10.2.2  选择MySQL数据库   194

10.2.3  执行SQL语句   195

10.2.4  mysql_fetch_array()函数   195

10.2.5  mysql_fetch_object()函数   197

10.2.6  mysql_fetch_row()函数   198

10.2.7  mysql_num_rows()函数   198

10.2.8  释放资源   199

10.2.9  关闭连接   200

10.3  PHP数据库简单示例   201

10.3.1  PHP操作数据库   201

10.3.2  动态添加用户信息   202

10.3.3  查询数据信息   204

10.3.4  修改数据   205

10.3.5  删除数据   207

10.4  本章小结   209

10.5  思考和练习   209

 第11章  文件操作   210

11.1  文件与目录基础   210

11.2  获取文件属性   211

11.2.1  从路径获取文件名   211

11.2.2  获取文件的时间属性   211

11.3  打开和关闭文件   212

11.3.1  打开文件   212

11.3.2  关闭文件   213

11.4  读写文件   213

11.4.1  读写字符串   214

11.4.2  检测文件末尾   216

11.4.3  读取行内容   216

11.4.4  读取CSV文件   217

11.4.5  读取和写入整个文件   218

11.4.6  随机存取文件数据   219

11.5  操作文件权限   220

11.5.1  改变文件的权限   221

11.5.2  检查文件权限   221

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

11.7  目录操作   223

11.7.1  目录操作函数   224

11.7.2  Directory类   226

11.7.3  文件和目录检测   226

11.8  本章小结   228

11.9  思考和练习   228

 第12章  图像技术   229

12.1  计算机图像基础   229

12.1.1  颜色模式   229

12.1.2  坐标系   231

12.1.3  图像类型   232

12.2  GD库   233

12.2.1  图像文件类型   233

12.2.2  启用GD库   233

12.2.3  GD库函数   234

12.3  创建图像   235

12.3.1  新建图像   235

12.3.2  设置颜色   236

12.3.3  绘制图像   236

12.3.4  保存图像   241

12.4  处理图像   242

12.4.1  打开图像   242

12.4.2  添加水印   243

12.4.3  制作缩略图   246

12.4.4  添加标准化文本   247

12.4.5  使用TrueType字体   248

12.5  本章小结   250

12.6  思考和练习   250

 第13章  面向对象编程   251

13.1  面向对象编程概念   251

13.2  类和对象   252

13.2.1  创建类   253

13.2.2  类的成员   253

13.2.3  实例化类   255

13.3  属性   256

13.3.1  声明属性   256

13.3.2  属性的可见性   256

13.3.3  访问属性   257

13.3.4  静态属性   258

13.3.5  类常量   258

13.4  方法   259

13.4.1  创建方法   259

13.4.2  方法的可访问性   259

13.4.3  方法的调用   259

13.4.4  方法的参数和返回值   259

13.4.5  在方法中访问对象的属性   260

13.4.6  静态方法   261

13.5  重载对象   262

13.5.1  用__get()和__set()方法重载属性访问   263

13.5.2  用__call()重载方法调用   264

13.5.3  其他重载方法   266

13.6  继承与接口   267

13.6.1  重载父类的方法   269

13.6.2  保留父类的功能   271

13.6.3  用final类和方法阻止继承和重载   271

13.6.4  抽象类和抽象方法   272

13.6.5  接口   274

13.7  自动加载类文件   277

13.8  序列化类对象   278

13.9  检测对象   280

13.10  本章小结   281

13.11  思考和练习   281

 第14章  PHP与JavaScript和Ajax   282

14.1  了解JavaScript   282

14.1.1  什么是JavaScript   282

14.1.2  JavaScript的作用   283

14.1.3  在网页中使用JavaScript的3种方式   283

14.2  JavaScript语言基础   285

14.2.1  JavaScript数据类型   285

14.2.2  JavaScript变量   285

14.2.3  JavaScript注释   287

14.3  JavaScript流程控制语句   288

14.3.1  条件语句   288

14.3.2  循环语句   291

14.3.3  跳转语句   293

14.4  JavaScript事件   293

14.5  JavaScript函数   294

14.6  JavaScript示例   296

14.6.1  使用JavaScript脚本验证表单元素是否为空   296

14.6.2  使用JavaScript脚本制作二级导航菜单   297

14.6.3  使用JavaScript脚本控制文本域和复选框   300

14.7  Ajax技术   301

14.7.1  Ajax的概念   301

14.7.2  Ajax的开发模式   301

14.7.3  Ajax的优点   302

14.7.4  XMLHttpRequest   302

14.7.5  在Ajax开发过程中需要注意的问题   304

14.7.6  用户重名检测   305

14.8  本章小结   307

14.9  思考和练习   308

 第15章  ThinkPHP   309

15.1  ThinkPHP简介   309

15.1.1  ThinkPHP的安装   310

15.1.2  ThinkPHP概述   312

15.2  ThinkPHP架构   313

15.2.1  ThinkPHP的目录结构   313

15.2.2  自动生成项目目录   315

15.2.3  命名规范   317

15.2.4  资源目录   318

15.2.5  调试模式配置   319

15.2.6  控制器   319

15.2.7  视图   322

15.2.8  数据读取   323

15.3  URL和路由   324

15.3.1  URL访问   324

15.3.2  参数传入   325

15.3.3  隐藏入口   326

15.3.4  定义路由   326

15.3.5  URL生成   326

15.4  请求与响应   327

15.4.1  请求对象   327

15.4.2  请求信息   329

15.4.3  响应信息   330

15.5  数据库操作   331

15.5.1  数据库配置   331

15.5.2  原生查询   331

15.5.3  链式操作   332

15.5.4  事务支持   332

15.6  模型和关联   333

15.6.1  模型定义   333

15.6.2  基础操作   334

15.7  视图和模板   336

15.7.1  模板输出   336

15.7.2  分页输出   338

15.7.3  渲染内容   338

15.8  本章小结   339

15.9  思考和练习   339

 第16章  PHP综合实例   340

16.1  Web应用开发流程   340

16.2  留言板   341

16.2.1  留言板制作预备知识   341

16.2.2  留言板功能需求分析   342

16.2.3  留言板数据库表设计   342

16.2.4  留言信息的读取展示   343

16.2.5  留言表单及留言处理   345

16.2.6  后台管理登录   348

16.2.7  PHP 留言板系统后台管理   349

16.2.8  后台管理回复及留言删除处理   350

16.3  个人博客   351

16.3.1  功能阐述   351

16.3.2  功能结构   351

16.3.3  系统预览   352

16.3.4  数据库设计   353

16.3.5  数据表设计   353

16.3.6  连接数据库   354

16.3.7  自动生成项目目录   355

16.3.8  控制器的设置   356

16.3.9  视图设置   359

16.3.10  后台管理程序架构分析   365

16.3.11  数据模型和数据校验的设计   366

16.4  本章小结   369

16.5  思考和练习   369

 参考文献   370