| 作者 |
| 明日科技 |
| 丛书名 |
| 软件开发视频大讲堂 |
| 出版社 |
| 清华大学出版社 |
| ISBN |
| 9787302541394 |
| 简要 |
| 简介 |
| 内容简介书籍计算机书籍 《PHP从入门到精通(第5版)》从初学者角度出发,通过通俗易懂的语言、丰富多彩的实例,详细介绍了使用PHP进行网络开发应该掌握的各方面技术。全书共分为4篇25章,其中,基础知识篇包括初识PHP、PHP环境搭建和开发工具、PHP语言基础、流程控制语句、字符串操作、正则表达式、PHP数组、PHP与Web页面交互、PHP与JavaScript交互、日期和时间;核心技术篇包括Cookie与Session、图形图像处理技术、文件系统、面向对象、PHP加密技术、MySQL数据库基础、phpMyAdmin图形化管理工具、PHP操作MySQL数据库、PDO数据库抽象层、ThinkPHP框架;高级应用篇包括Smarty模板技术、PHP与XML技术、PHP与Ajax技术;项目实战篇包括应用Smarty模板开发电子商务网站、应用ThinkPHP框架开发编程e学网等内容。 |
| 目录 |
第1篇 基础知识 第1章 初识PHP 2 视频讲解:23分钟 1.1 PHP概述 3 1.1.1 什么是PHP 3 1.1.2 PHP语言的优势 3 1.1.3 PHP 5的新特性 4 1.1.4 PHP的发展趋势 4 1.1.5 PHP的应用领域 5 1.2 扩展库 5 1.3 如何学好PHP 8 1.4 学习资源 9 1.4.1 常用软件资源 9 1.4.2 常用网上资源 10 1.4.3 主要图书网站 10 1.5 网站建设的基本流程 10 1.6 小结 11 第2章 PHP环境搭建和开发工具 12 视频讲解:1小时9分钟 2.1 在Windows下使用WampServer 13 2.1.1 PHP开发环境的安装 13 2.1.2 PHP服务器的启动与停止 15 2.1.3 PHP开发环境的关键配置 16 2.2 在Linux下的安装配置 19 2.2.1 安装Apache服务器 19 2.2.2 安装MySQL数据库 20 2.2.3 安装PHP 5 21 2.3 PHP常用开发工具 23 2.4 第一个PHP实例 24 2.5 小结 26 2.6 实践与练习 26 第3章 PHP语言基础 27 视频讲解:2小时48分钟 3.1 PHP的标记风格 28 3.2 PHP注释的应用 28 3.3 PHP的数据类型 30 3.3.1 标量数据类型 30 3.3.2 复合数据类型 35 3.3.3 特殊数据类型 36 3.3.4 数据类型转换 37 3.3.5 检测数据类型 39 3.4 PHP常量 39 3.4.1 声明和使用常量 39 3.4.2 预定义常量 41 3.5 PHP变量 42 3.5.1 变量声明及使用 42 3.5.2 变量作用域 44 3.5.3 可变变量 46 3.5.4 PHP预定义变量 46 3.6 PHP运算符 47 3.6.1 算术运算符 47 3.6.2 字符串运算符 48 3.6.3 赋值运算符 49 3.6.4 递增或递减运算符 49 3.6.5 位运算符 50 3.6.6 逻辑运算符 51 3.6.7 比较运算符 52 3.6.8 条件运算符 53 3.6.9 运算符的优先级 53 3.7 PHP的表达式 54 3.8 PHP函数 55 3.8.1 定义和调用函数 55 3.8.2 在函数间传递参数 56 3.8.3 从函数中返回值 58 3.8.4 变量函数 58 3.9 PHP编码规范 59 3.9.1 什么是编码规范 59 3.9.2 PHP书写规则 60 3.9.3 PHP命名规则 61 3.10 小结 63 3.11 实践与练习 63 第4章 流程控制语句 64 视频讲解:1小时8分钟 4.1 条件控制语句 65 4.1.1 if语句 65 4.1.2 if…else语句 66 4.1.3 elseif语句 67 4.1.4 switch语句 69 4.2 循环控制语句 71 4.2.1 while循环语句 71 4.2.2 do…while循环语句 72 4.2.3 for循环语句 73 4.2.4 foreach循环语句 74 4.3 跳转语句 75 4.3.1 break语句 75 4.3.2 continue语句 77 4.4 小结 78 4.5 实践与练习 79 第5章 字符串操作 80 视频讲解:56分钟 5.1 字符串的定义方法 81 5.1.1 使用单引号或双引号定义字符串 81 5.1.2 使用定界符定义字符串 82 5.2 字符串操作 82 5.2.1 去除字符串首尾空格和特殊字符 83 5.2.2 转义、还原字符串数据 84 5.2.3 获取字符串的长度 87 5.2.4 截取字符串 89 5.2.5 比较字符串 90 5.2.6 检索字符串 92 5.2.7 替换字符串 94 5.2.8 格式化字符串 97 5.2.9 分割、合成字符串 98 5.3 小结 100 5.4 实践与练习 100 第6章 正则表达式 101 视频讲解:33分钟 6.1 什么是正则表达式 102 6.2 正则表达式语法规则 102 6.2.1 行定位符(^和$) 103 6.2.2 单词分界符(\\b、\\B) 103 6.2.3 字符类([ ]) 103 6.2.4 选择字符(|) 104 6.2.5 连字符(-) 104 6.2.6 排除字符([^]) 105 6.2.7 限定符( * {n,m}) 105 6.2.8 点号字符(.) 105 6.2.9 转义字符(\\) 106 6.2.10 反斜线(\\) 106 6.2.11 括号字符(()) 107 6.2.12 反向引用 108 6.2.13 模式修饰符 108 6.3 PCRE兼容正则表达式函数 109 6.3.1 preg_grep()函数 109 6.3.2 preg_match()和preg_match_all()函数 109 6.3.3 preg_quote()函数 110 6.3.4 preg_replace()函数 111 6.3.5 preg_replace_callback()函数 112 6.3.6 preg_split()函数 112 6.4 应用正则表达式对用户注册信息进行验证 112 6.5 小结 115 6.6 实践与练习 115 第7章 PHP数组 116 视频讲解:1小时6分钟 7.1 什么是数组 117 7.2 声明数组 117 7.3 数组的类型 119 7.3.1 数字索引数组 119 7.3.2 关联数组 119 7.4 输出数组 120 7.5 数组的构造 121 7.5.1 一维数组 121 7.5.2 二维数组 121 7.6 遍历数组 122 7.7 字符串与数组的转换 124 7.8 统计数组元素个数 126 7.9 查询数组中指定元素 127 7.10 获取数组中最后一个元素 128 7.11 向数组中添加元素 129 7.12 删除数组中重复元素 129 7.13 综合运用数组函数实现多文件上传 130 7.14 小结 132 7.15 实践与练习 132 第8章 PHP与Web页面交互 133 视频讲解:1小时6分钟 8.1 表单 134 8.1.1 创建表单 134 8.1.2 表单元素 135 8.2 在普通的Web页中插入表单 138 8.3 获取表单数据的两种方法 140 8.3.1 使用POST方法提交表单 140 8.3.2 使用GET方法提交表单 141 8.4 PHP参数传递的常用方法 142 8.4.1 $_POST[]全局变量 142 8.4.2 $_GET[]全局变量 143 8.4.3 $_SESSION[]变量 143 8.5 在Web页中嵌入PHP脚本 144 8.5.1 在HTML标记中添加PHP脚本 144 8.5.2 对表单元素的value属性进行赋值 144 8.6 在PHP中获取表单数据 144 8.6.1 获取文本框、密码域、隐藏域、按钮、文本域的值 144 8.6.2 获取单选按钮的值 146 8.6.3 获取复选框的值 146 8.6.4 获取下拉列表框/菜单列表框的值 148 8.6.5 获取文件域的值 150 8.7 对URL传递的参数进行编/解码 151 8.7.1 对URL传递的参数进行编码 151 8.7.2 对URL传递的参数进行解码 152 8.8 PHP与Web表单的综合应用 153 8.9 小结 154 8.10 实践与练习 154 第9章 PHP与JavaScript交互 155 视频讲解:1小时4分钟 9.1 了解JavaScript 156 9.1.1 什么是JavaScript 156 9.1.2 JavaScript的功能 156 9.2 JavaScript语言基础 156 9.2.1 JavaScript数据类型 157 9.2.2 JavaScript变量 157 9.2.3 JavaScript注释 159 9.3 自定义函数 159 9.4 JavaScript流程控制语句 160 9.4.1 条件语句 160 9.4.2 循环语句 164 9.4.3 跳转语句 166 9.5 JavaScript事件 167 9.6 调用JavaScript脚本(JavaScript脚本嵌入方式) 168 9.6.1 在HTML中嵌入JavaScript脚本 168 9.6.2 应用JavaScript事件调用自定义函数 169 9.6.3 在PHP动态网页中引用JS文件 169 9.6.4 解决浏览器不支持JavaScript的问题 171 9.7 在PHP中调用JavaScript脚本 173 9.7.1 应用JavaScript脚本验证表单元素是否为空 173 9.7.2 应用JavaScript脚本制作二级导航菜单 175 9.7.3 应用JavaScript脚本控制文本域和复选框 176 9.8 小结 179 9.9 实践与练习 179 第10章 日期和时间 180 视频讲解:30分钟 10.1 系统时区设置 181 10.1.1 时区划分 181 10.1.2 时区设置 181 10.2 PHP日期和时间函数 181 10.2.1 获得本地化时间戳 182 10.2.2 获取当前时间戳 183 10.2.3 获取当前日期和时间 183 10.2.4 获取日期信息 185 10.2.5 检验日期的有效性 186 10.2.6 输出格式化的日期和时间 186 10.2.7 显示本地化的日期和时间 188 10.2.8 将日期和时间解析为UNIX时间戳 191 10.3 日期和时间的应用 192 10.3.1 比较两个时间的大小 192 10.3.2 实现倒计时功能 192 10.3.3 计算页面脚本的运行时间 193 10.4 小结 195 10.5 实践与练习 195 第2篇 核心技术 第11章 Cookie与Session 198 视频讲解:1小时8分钟 11.1 Cookie管理 199 11.1.1 了解Cookie 199 11.1.2 创建Cookie 200 11.1.3 读取Cookie 201 11.1.4 删除Cookie 202 11.1.5 Cookie的生命周期 203 11.2 Session管理 203 11.2.1 了解Session 203 11.2.2 创建会话 204 11.2.3 Session设置时间 206 11.2.4 通过Session判断用户的操作权限 208 11.3 Session高级应用 210 11.3.1 Session临时文件 210 11.3.2 Session缓存 211 11.3.3 Session数据库存储 212 11.4 小结 215 11.5 实践与练习 215 第12章 图形图像处理技术 216 视频讲解:45分钟 12.1 在PHP中加载GD库 217 12.2 Jpgraph的安装与配置 218 12.2.1 Jpgraph的安装 218 12.2.2 Jpgraph的配置 218 12.3 图形图像的典型应用 219 12.3.1 创建一个简单的图像 219 12.3.2 使用GD2函数在照片上添加文字 219 12.3.3 使用图像处理技术生成验证码 220 12.3.4 使用柱形图统计图书月销售量 222 12.3.5 使用折线图统计图书月销售额 223 12.3.6 使用3D饼形图统计各类商品的年销售额比率 225 12.4 小结 226 12.5 实践与练习 226 第13章 文件系统 228 视频讲解:49分钟 13.1 文件处理 229 13.1.1 打开/关闭文件 229 13.1.2 读写文件 230 13.1.3 操作文件 235 13.2 处理 236 13.2.1 打开/关闭 236 13.2.2 浏览 237 13.2.3 操作 238 13.3 文件处理的高级应用 238 13.3.1 远程文件的访问 239 13.3.2 文件指针 239 13.3.3 锁定文件 240 13.4 文件上传 241 13.4.1 配置php.ini文件 241 13.4.2 预定义变量$_FILES 242 13.4.3 文件上传函数 243 13.4.4 多文件上传 244 13.5 小结 245 13.6 实践与练习 245 第14章 面向对象 246 视频讲解:26分钟 14.1 面向对象的基本概念 247 14.1.1 类 247 14.1.2 对象 247 14.1.3 面向对象编程的三大特点 248 14.2 PHP与对象 248 14.2.1 类的定义 248 14.2.2 成员方法 249 14.2.3 类的实例化 249 14.2.4 成员变量 250 14.2.5 类常量 251 14.2.6 构造方法和析构方法 252 14.2.7 继承和多态的实现 255 14.2.8 $this ->”和::”的使用 257 14.2.9 数据隐藏 259 14.2.10 静态变量(方法) 261 14.3 面向对象的高级应用 263 14.3.1 final关键字 263 14.3.2 抽象类 263 14.3.3 接口的使用 265 14.3.4 克隆对象 267 14.3.5 对象比较 268 14.3.6 对象类型检测 269 14.3.7 魔术方法 270 14.4 面向对象的应用中文字符串的截取类 274 14.5 小结 276 14.6 实践与练习 276 第15章 PHP加密技术 277 视频讲解:23分钟 15.1 PHP加密函数 278 15.1.1 使用crypt()函数进行加密 278 15.1.2 使用md5()函数进行加密 280 15.1.3 使用sha1()函数进行加密 281 15.2 PHP加密扩展库 282 15.2.1 Mcrypt扩展库 282 15.2.2 Mhash扩展库 285 15.3 小结 286 15.4 实践与练习 286 第16章 MySQL数据库基础 287 视频讲解:56分钟 16.1 MySQL概述 288 16.2 启动和关闭MySQL服务器 289 16.2.1 启动MySQL服务器 289 16.2.2 连接和断开MySQL服务器 289 16.3 操作MySQL数据库 290 16.3.1 创建数据库 290 16.3.2 选择数据库 291 16.3.3 查看数据库 291 16.3.4 删除数据库 291 16.4 MySQL数据类型 292 16.4.1 数字类型 292 16.4.2 字符串类型 293 16.4.3 日期和时间类型 294 16.5 操作数据表 294 16.5.1 创建数据表 295 16.5.2 查看表结构 296 16.5.3 修改表结构 297 16.5.4 重命名数据表 298 16.5.5 删除数据表 298 16.6 数据表记录的更新操作 299 16.6.1 数据表记录的添加 299 16.6.2 数据表记录的修改 300 16.6.3 数据表记录的删除 300 16.7 数据表记录的查询操作 300 16.8 MySQL中的特殊字符 304 16.9 小结 305 16.10 实践与练习 305 第17章 phpMyAdmin图形化管理工具 306 视频讲解:10分钟 17.1 phpMyAdmin介绍 307 17.2 phpMyAdmin的使用 307 17.2.1 操作数据库 307 17.2.2 操作数据表 309 17.2.3 使用SQL语句操作数据表 311 17.2.4 管理数据记录 315 17.2.5 生成和执行MySQL数据库脚本 316 17.3 小结 318 17.4 实践与练习 318 第18章 PHP操作MySQL数据库 319 视频讲解:52分钟 18.1 PHP操作MySQL数据库的方法 320 18.1.1 连接MySQL服务器 320 18.1.2 选择MySQL数据库 321 18.1.3 执行SQL语句 322 18.1.4 将结果集返回到数组中 323 18.1.5 从结果集中获取一行作为对象 325 18.1.6 从结果集中获取一行作为枚举数组 326 18.1.7 从结果集中获取一行作为关联数组 326 18.1.8 获取查询结果集中的记录数 327 18.1.9 释放内存 328 18.1.10 关闭连接 328 18.1.11 连接与关闭MySQL服务器的最佳时机 329 18.2 管理MySQL数据库中的数据 330 18.2.1 添加数据 330 18.2.2 编辑数据 331 18.2.3 删除数据 333 18.2.4 批量数据操作 334 18.3 小结 335 18.4 实践与练习 335 第19章 PDO数据库抽象层 336 视频讲解:48分钟 19.1 什么是PDO 337 19.1.1 PDO概述 337 19.1.2 PDO特点 337 19.1.3 安装PDO 337 19.2 PDO连接数据库 338 19.2.1 PDO构造函数 338 19.2.2 DSN详解 339 19.3 PDO中执行SQL语句 339 19.3.1 exec方法 339 19.3.2 query方法 339 19.3.3 预处理语句prepare和execute方法 340 19.4 PDO中获取结果集 340 19.4.1 fetch方法 340 19.4.2 fetchAll方法 342 19.4.3 fetchColumn方法 343 19.5 PDO中捕获SQL语句中的错误 344 19.5.1 使用默认模式PDO::ERRMODE_SILENT 344 19.5.2 使用警告模式PDO::ERRMODE_WARNING 345 19.5.3 使用异常模式PDO::ERRMODE_EXCEPTION 347 19.6 PDO中错误处理 348 19.6.1 errorCode方法 348 19.6.2 errorInfo方法 350 19.7 PDO中事务处理 351 19.8 PDO中存储过程 352 19.9 小结 354 19.10 实践与练习 354 第20章 ThinkPHP框架 355 视频讲解:2小时42分钟 20.1 ThinkPHP简介 356 20.1.1 ThinkPHP框架的主要特性 356 20.1.2 环境要求 356 20.1.3 下载和安装 357 20.2 ThinkPHP基础 358 20.2.1 结构 358 20.2.2 命名规范 360 20.2.3 架构总览 361 20.3 ThinkPHP的配置 364 20.3.1 配置基础 364 20.3.2 配置加载配置文件和 365 20.3.3 入口配置 366 20.3.4 资源配置 368 20.3.5 调试配置 368 20.4 路由 369 20.4.1 路由概述 369 20.4.2 路由模式 370 20.4.3 路由定义 370 20.4.4 路由表达式 374 20.4.5 路由地址 375 20.4.6 路由分组 375 20.4.7 MISS路由 376 20.5 控制器 377 20.5.1 控制器的定义 377 20.5.2 跳转和重定向 378 20.6 数据库 379 20.6.1 数据库的连接 379 20.6.2 基本操作 382 20.7 模型 386 20.7.1 模型的定义 387 20.7.2 模型基础操作 388 20.8 视图 395 20.8.1 视图渲染 395 20.8.2 视图赋值 396 20.9 模板 398 20.9.1 变量输出 398 20.9.2 使用函数 399 20.9.3 内置标签 400 20.10 小结 403 20.11 实践与练习 403 第3篇 高级应用 第21章 Smarty模板技术 406 视频讲解:55分钟 21.1 Smarty简介 407 21.1.1 什么是Smarty 407 21.1.2 Smarty与MVC 407 21.1.3 Smarty的特点 407 21.2 Smarty的安装配置 408 21.2.1 Smarty的下载和安装 408 21.2.2 第一个Smarty程序 408 21.2.3 Smarty配置 410 21.3 Smarty模板设计 412 21.3.1 Smarty模板文件 412 21.3.2 注释 412 21.3.3 变量 412 21.3.4 修饰变量 415 21.3.5 流程控制 417 21.4 Smarty程序设计 420 21.4.1 Smarty中的常用方法 420 21.4.2 Smarty的配置变量 422 21.5 Smarty模板的应用 422 21.5.1 将Smarty的配置方法封装到类中 422 21.5.2 Smarty ADODB整合应用 425 21.6 小结 427 21.7 实践与练习 427 第22章 PHP与XML技术 428 视频讲解:24分钟 22.1 XML概述 429 22.2 XML语法 429 22.2.1 XML文档结构 429 22.2.2 XML声明 430 22.2.3 处理指令 430 22.2.4 注释 430 22.2.5 XML元素 431 22.2.6 XML属性 431 22.2.7 使用CDATA标记 431 22.2.8 XML命名空间 432 22.3 在PHP中创建XML文档 433 22.4 SimpleXML类库 433 22.4.1 创建SimpleXML对象 434 22.4.2 遍历所有子元素 435 22.4.3 遍历所有属性 436 22.4.4 访问特定节点元素和属性 437 22.4.5 修改XML数据 437 22.4.6 保存XML文档 439 22.5 动态创建XML文档 440 22.6 小结 441 22.7 实践与练习 441 第23章 PHP与Ajax技术 442 视频讲解:42分钟 23.1 Ajax概述 443 23.1.1 什么是Ajax 443 23.1.2 Ajax的开发模式 443 23.1.3 Ajax的优点 444 23.2 Ajax使用的技术 444 23.2.1 JavaScript脚本语言 444 23.2.2 XMLHttpRequest 444 23.2.3 XML语言 447 23.2.4 DOM 447 23.2.5 CSS 447 23.3 Ajax开发需要注意的几个问题 448 23.4 在PHP中应用Ajax技术的典型应用 449 23.4.1 在PHP中应用Ajax技术检测用户名 449 23.4.2 在PHP中应用Ajax技术实现博客文章类别添加 451 23.5 小结 454 23.6 实践与练习 454 第4篇 项目实战 第24章 应用Smarty模板开发电子商务网站 456 视频讲解:2小时21分钟 24.1 开发背景 457 24.2 需求分析 457 24.3 系统分析 457 24.3.1 系统目标 457 24.3.2 系统功能结构 458 24.3.3 开发环境 459 24.3.4 文件夹组织结构 459 24.4 数据库与数据表的设计 460 24.4.1 数据库分析 460 24.4.2 创建数据库和数据表 462 24.5 公共文件设计 464 24.5.1 数据库连接、管理和分页类文件 465 24.5.2 Smarty模板配置类文件 467 24.5.3 执行类的实例化文件 468 24.6 前台首页设计 468 24.6.1 前台首页技术分析 469 24.6.2 前台首页实现过程 470 24.7 登录模块设计 472 24.7.1 登录模块概述 472 24.7.2 登录模块技术分析 472 24.7.3 用户注册 474 24.7.4 用户登录 476 24.7.5 找回密码 478 24.8 会员信息模块设计 483 24.8.1 会员信息模块概述 483 24.8.2 会员信息模块技术分析 483 24.8.3 会员中心 484 24.8.4 安全退出 487 24.9 商品显示模块 488 24.9.1 商品展示模块概述 488 24.9.2 商品展示模块技术分析 489 24.9.3 商品展示模块的实现过程 489 24.10 购物车模块设计 492 24.10.1 购物车模块概述 492 24.10.2 购物车模块技术分析 493 24.10.3 购物车展示 495 24.10.4 更改商品数量 497 24.10.5 删除商品 498 24.10.6 保存购物车 500 24.11 收银台模块设计 502 24.11.1 收银台模块概述 502 24.11.2 收银台模块技术分析 502 24.11.3 显示订单 503 24.11.4 填写订单 503 24.11.5 处理订单 504 24.12 后台首页设计 505 24.12.1 后台首页概述 505 24.12.2 后台首页技术分析 506 24.12.3 后台首页实现过程 508 24.13 开发常见问题与解决 510 24.13.1 解决Ajax的乱码问题 510 24.13.2 使用JS脚本获取、输出标签内容 510 24.13.3 禁用页面缓存 510 24.13.4 在新窗口中使用session 511 24.13.5 判断上传文件格式 511 24.13.6 设置服务器的时间 511 24.14 小结 512 第25章 应用ThinkPHP框架开发编程e学网 513 视频讲解:1小时29分钟 25.1 项目设计思路 514 25.1.1 功能阐述 514 25.1.2 功能结构 514 25.1.3 系统预览 515 25.2 数据库设计 517 25.2.1 数据库分析 517 25.2.2 数据表设计 517 25.2.3 连接数据库 520 25.3 系统开发必备 520 25.3.1 系统开发环境 520 25.3.2 文件夹组织结构 521 25.4 前台模块设计 521 25.4.1 视频首页设计 521 25.4.2 登录注册页面设计 524 25.4.3 视频列表页面设计 529 25.4.4 视频播放页面设计 530 25.4.5 会员中心页面设计 533 25.5 后台模块设计 535 25.5.1 课程管理 535 25.5.2 资源管理 537 25.5.3 注册会员 539 25.5.4 账号管理 540 25.6 小结 540 |