×
超值优惠券
¥50
100可用 有效期2天

全场图书通用(淘书团除外)

关闭
暂无评论
图文详情
  • ISBN:9787302566281
  • 装帧:一般胶版纸
  • 册数:暂无
  • 重量:暂无
  • 开本:其他
  • 页数:576
  • 出版时间:2021-01-01
  • 条形码:9787302566281 ; 978-7-302-56628-1

本书特色

《PHP 7开发宝典(第4版)》详细介绍了如何通过添加反馈表单、创建私人区域让授权用户上传自动调整大小的图像,或者将所有内容存储到数据库中,从而使网站更具动态性。作者David Powers更新了他的权威书籍,介绍了新发布的PHP 7,以及这个版本所带来的新技术和变化。 新的特性包括太空船运算符、空合并运算符、生成器、在list()函数中使用数组便捷语法、数组解引用,以及使用splat运算符进行数组解包。 PHP和MySQL数据库是创建动态网站更受欢迎的组合。它们是免费的且易于使用,并且许多网络托管公司都提供标准的安装包。本书还涵盖了MariaDB。MariaDB是MySQL的无缝替代品,已经被许多Web服务器所采用。 《PHP 7开发宝典(第4版)》通过一系列实例向你提供了真正有价值的技术方案,并可以直接融入你的网站,优化性能和增加功能,如文件上传、电子邮件反馈表单、图片库和内容管理系统等。创建每个解决方案时,不仅实现了特定功能,还提供了界面设计。 《PHP 7开发宝典(第4版)》不仅提供一系列现成的脚本,而且每个PHP解决方案都建立在以前的基础之上,快速而轻松地教给你PHP和数据库设计的基础知识。学完本书,你将有信心开始编写自己的脚本;如果你不愿意从头开始编写,也可以修改本书提供的代码以满足自己的需求。从本书一开始,作者就向你展示了如何通过采用安全编码实践来轻松地保护网站。

内容简介

《PHP 7开发宝典(第4版)》详细介绍了如何通过添加反馈表单、创建私人区域让授权用户上传自动调整大小的图像,或者将所有内容存储到数据库中,从而使网站更具动态性。作者David Powers更新了他的非常不错书籍,介绍了新发布的PHP 7,以及这个版本所带来的新技术和变化。新的特性包括太空船运算符、空合并运算符、生成器、在list()函数中使用数组便捷语法、数组解引用,以及使用splat运算符进行数组解包。     PHP和MySQL数据库是创建动态网站更受欢迎的组合。它们是免费的且易于使用,并且许多网络托管公司都提供标准的安装包。本书还涵盖了MariaDB。MariaDB是MySQL的无缝替代品,已经被许多Web服务器所采用。     《PHP 7开发宝典(第4版)》通过一系列实例向你提供了真正有价值的技术方案,并可以直接融入你的网站,优化性能和增加功能,如文件上传、电子邮件反馈表单、图片库和内容管理系统等。创建每个解决方案时,不仅实现了特定功能,还提供了界面设计。     《PHP 7开发宝典(第4版)》不仅提供一系列现成的脚本,而且每个PHP解决方案都建立在以前的基础之上,快速而轻松地教给你PHP和数据库设计的基础知识。学完本书,你将有信心开始编写自己的脚本;如果你不愿意从头开始编写,也可以修改本书提供的代码以满足自己的需求。从本书一开始,作者就向你展示了如何通过采用安全编码实践来轻松地保护网站。 主要内容 ●  设计与构建基于PHP的动态网站和应用程序 ●  通过可以重用的实际示例开始学习 ●  掌握PHP 7的新特性,包括处理数组的新方法 ●  使用近期新的PHP 7技术、创新和更佳实践

目录

目 录 _x00C_第1章 PHP介绍和PHP使用对象 1 1.1 PHP的演进 2 1.2 使用PHP实现页面_x00B_动态效果 2 1.3 学习和使用PHP的难易_x00B_程度 4 1.3.1 复制和粘贴本书的_x00B_PHP代码 5 1.3.2 PHP的安全性 5 1.4 编写PHP代码需要使用_x00B_的软件 5 1.5 本章小结 7 第2章 准备使用PHP 9 2.1 检测网站是否支持PHP 9 2.2 安装本地测试环境 11 2.3 在Windows上设置PHP_x00B_开发测试环境 11 2.3.1 设置Windows以显示_x00B_文件扩展名 12 2.3.2 选择Web服务器 12 2.3.3 在Windows上安装一体_x00B_化软件安装包 12 2.4 在macOS上设置PHP开发测试环境 12 2.4.1 安装MAMP 13 2.4.2 测试和配置MAMP 13 2.5 PHP文件在Windows和Mac上的存放位置 15 2.6 查看PHP设置 16 2.6.1 使用phpinfo()命令显示_x00B_服务器配置 16 2.6.2 编辑php.ini文件 18 2.7 后续学习内容 20 第3章 编写PHP脚本 21 3.1 PHP概况 21 3.1.1 告诉服务器处理PHP_x00B_页面 22 3.1.2 将PHP代码嵌入网页 22 3.1.3 将PHP代码保存在外部_x00B_文件中 23 3.1.4 使用变量表示变化的值 23 3.1.5 用分号结束语句 26 3.1.6 注释脚本 26 3.1.7 使用数组存储多个_x00B_变量 27 3.1.8 PHP内置的超级全局_x00B_数组 29 3.1.9 理解引号的使用 29 3.1.10 根据条件语句做出_x00B_决策 32 3.1.11 比较运算符 33 3.1.12 使用缩进和空格提高_x00B_代码可读性 34 3.1.13 对重复性任务使用_x00B_循环 35 3.1.14 使用函数执行预设的_x00B_任务 35 3.1.15 显示PHP输出 36 3.1.16 理解PHP错误消息 38 3.2 本章小结 39 第4章 PHP:快速参考 41 4.1 在已有的网站中使用PHP 41 4.2 PHP中的数据类型 41 4.2.1 检查变量的数据类型 43 4.2.2 显式更改变量的数据_x00B_类型 43 4.2.3 检查变量是否已定义 44 4.3 使用PHP进行计算 44 4.3.1 算术运算符 44 4.3.2 使用递增和递减运算符 45 4.3.3 运算符的优先级 46 4.3.4 组合计算和赋值运算符 46 4.4 字符串连接 46 4.5 你想知道的关于引号的_x00B_一切 47 4.5.1 PHP处理字符串中的_x00B_变量的方式 47 4.5.2 在双引号内使用转义_x00B_序列 48 4.5.3 在字符串中嵌入关联_x00B_数组元素 48 4.5.4 使用heredoc语法避免_x00B_转义引号 49 4.6 创建数组 50 4.6.1 创建索引数组 51 4.6.2 创建关联数组 51 4.6.3 创建空数组 52 4.6.4 多维数组 52 4.6.5 使用print_r()函数检查_x00B_数组 53 4.7 PHP中的逻辑运算 54 4.7.1 显式布尔值 54 4.7.2 隐式布尔值 54 4.7.3 根据两个值的比较_x00B_结果做决策 55 4.7.4 复合条件 56 4.7.5 对决策链使用switch_x00B_语句 56 4.7.6 使用三元运算符 58 4.7.7 使用空合并运算符设置_x00B_默认值 59 4.8 使用循环重复执行代码 59 4.8.1 while循环和do…while_x00B_循环 59 4.8.2 用途多样的for循环 60 4.8.3 使用foreach循环遍历_x00B_数组和对象 61 4.8.4 中断循环 62 4.9 使用函数模块化代码 63 4.9.1 向函数传递值 63 4.9.2 为参数设置默认值 64 4.9.3 变量的作用域 65 4.9.4 从函数返回值 66 4.9.5 生成器—— 一种不断_x00B_产生输出的特殊类型_x00B_的函数 66 4.9.6 通过引用传递参数 67 4.9.7 接收可变数量参数的_x00B_函数 68 4.9.8 自定义函数的位置 69 4.10 理解PHP类和对象 69 4.11 为类和函数指定数据类型_x00B_(可选) 70 4.12 处理错误和异常 72 4.13 动态创建新变量 73 4.14 后续内容 74 第5章 使用包含文件 75 5.1 包含来自外部文件的代码 75 5.1.1 PHP包含命令 75 5.1.2 PHP查找包含文件的_x00B_位置 76 5.1.3 为包含文件选择正确_x00B_的文件扩展名 81 5.1.4 创建内容会发生变化_x00B_的页面 91 5.1.5 防止包含文件出错 100 5.1.6 抑制已部署网站的错误_x00B_消息 101 5.1.7 不能在PHP包含文件中_x00B_使用网站根相对链接 106 5.1.8 选择获取包含文件的_x00B_位置 107 5.1.9 包含文件的安全注意_x00B_事项 108 5.1.10 修改include_path_x00B_指令 108 5.2 本章回顾 111 第6章 在线表单 113 6.1 PHP从表单收集信息的_x00B_方式 113 6.1.1 理解post和get的_x00B_区别 115 6.1.2 使用PHP超级全局_x00B_数组获取表单数据 118 6.2 处理和验证用户输入 118 6.2.1 创建可重用的脚本 119 6.2.2 在表单不完整时保留_x00B_用户输入 127 6.2.3 过滤潜在攻击 129 6.3 发送电子邮件 131 6.4 处理多项选择表单元素 141 6.5 本章回顾 150 第7章 使用PHP管理文件 151 7.1 检查PHP是否能打开_x00B_文件 151 7.1.1 在Windows服务器_x00B_根目录外创建文件_x00B_夹以便进行本地测试 152 7.1.2 影响文件访问的配置_x00B_设置 153 7.2 读写文件 153 7.2.1 在单个操作中读取_x00B_文件 154 7.2.2 打开和关闭用于读/写_x00B_操作的文件 158 7.3 探索文件系统 167 7.3.1 使用scandir()函数_x00B_检查文件夹 167 7.3.2 使用FilesystemIterator类_x00B_检查文件夹的内容 168 7.3.3 使用RegexIterator限制_x00B_文件类型 171 7.4 访问远程文件 175 7.4.1 使用新闻源和其他_x00B_RSS源 176 7.4.2 使用SimpleXML 177 7.5 创建下载链接 181 7.6 本章回顾 183 第8章 使用数组 185 8.1 修改数组元素 185 8.1.1 PHP解决方案8-1:使用_x00B_循环修改数组元素 186 8.1.2 PHP解决方案8-2:_x00B_使用array_walk()函数_x00B_修改数组元素 188 8.1.3 PHP解决方案8-3:_x00B_使用array_map()函数_x00B_修改数组元素 190 8.2 合并数组 193 8.2.1 使用数组并集操作符 193 8.2.2 使用array_merge()和_x00B_array_merge_recursive()_x00B_函数 195 8.2.3 将两个索引数组合并为_x00B_关联数组 197 8.2.4 比较数组 197 8.2.5 PHP解决方案8-4:_x00B_用逗号连接数组 198 8.3 数组排序 201 8.3.1 PHP解决方案8-5:_x00B_使用宇宙飞船操作符_x00B_进行自定义排序 203 8.3.2 使用array_multisort()_x00B_函数进行复杂排序 205 8.3.3 PHP解决方案8-6:_x00B_使用array_multisort()_x00B_函数对多维数组排序 206 8.3.4 PHP解决方案8-7:_x00B_查找数组的所有排列 208 8.4 处理数组数据 210 8.4.1 PHP解决方案8-8:_x00B_自动构建嵌套列表 210 8.4.2 PHP解决方案8-9:_x00B_从JSON中提取数据 214 8.5 自动将数组元素分配给_x00B_变量 217 8.5.1 使用extract()函数 218 8.5.2 使用list() 218 8.5.3 使用list()的数组快捷_x00B_语法 219 8.5.4 PHP解决方案8-10:_x00B_使用生成器处理CSV_x00B_文件 219 8.6 使用扩张操作符从数组中_x00B_解包参数 222 8.7 本章回顾 224 第9章 上传文件 225 9.1 PHP处理文件上传的_x00B_方式 225 9.1.1 检查服务器是否支持_x00B_上传 226 9.1.2 向表单添加文件上传_x00B_字段 227 9.1.3 理解$_FILES数组 228 9.1.4 建立上传目录 230 9.2 上传文件 230 9.2.1 将临时文件转移到_x00B_上传文件夹 231 9.2.2 PHP解决方案9-1:创建_x00B_基本的文件上传脚本 231 9.3 创建PHP文件上传类 234 9.3.1 定义PHP类 235 9.3.2 检查上传文件的错误 242 9.3.3 修改受保护的属性 245 9.4 一次上传多个文件 252 9.5 使用Upload类 258 9.6 上传文件时需要注意的_x00B_检查点 258 9.7 本章回顾 259 第10章 生成缩略图 261 10.1 检查服务器的能力 261 10.2 动态处理图像 262 10.3 上传时自动调整图像_x00B_大小 281 10.3.1 扩展类 281 10.3.2 使用Thumbnail-_x00B_Upload类 287 10.4 本章回顾 288 第11章 记住用户的输入:简单_x00B_登录表单和多页表单 289 11.1 会话的定义和工作原理 289 11.1.1 创建PHP会话 292 11.1.2 创建和销毁会话_x00B_变量 292 11.1.3 销毁会话 292 11.1.4 重新生成会话ID 293 11.1.5 Headers already sent_x00B_错误 293 11.2 使用会话限制访问 294 11.2.1 PHP解决方案11-1:一_x00B_个简单的会话示例 294 11.2.2 使用基于文件的身份_x00B_验证 299 11.2.3 保护密码的安全 299 11.3 设置会话的时间限制 321 11.4 在多页表单之间传递_x00B_信息 324 11.5 本章回顾 331 第12章 数据库入门 333 12.1 选择数据库:MySQL或_x00B_MariaDB 333 12.2 数据库存储数据的原理 334 12.2.1 主键的工作原理 335 12.2.2 用主键和外键链接_x00B_多个数据表 336 12.2.3 把信息分成小块 337 12.2.4 设计良好数据库的_x00B_标准 337 12.3 使用图形界面管理_x00B_MySQL 337 12.4 创建名为phpsols的_x00B_数据库 339 12.4.1 MySQL的命名_x00B_规则 339 12.4.2 使用phpMyAdmin_x00B_创建新数据库 340 12.4.3 创建特定于数据库的_x00B_用户账户 341 12.4.4 创建数据库表 344 12.4.5 在表中插入记录 346 12.4.6 创建用于备份和数据_x00B_迁移的SQL文件 350 12.5 在MySQL中选择正确的_x00B_数据类型 354 12.5.1 存储文本 354 12.5.2 存储数字 355 12.5.3 存储日期和时间 355 12.5.4 存储预定义列表 356 12.5.5 存储二进制数据 356 12.6 本章回顾 356 第13章 使用PHP和SQL连接_x00B_数据库 357 13.1 检查远程服务器设置 357 13.2 PHP与数据库通信的_x00B_过程 358 13.2.1 使用MySQLi_x00B_进行连接 359 13.2.2 使用PDO进行连接 359 13.2.3 PHP解决方案13-1:_x00B_创建可重用的数据库_x00B_连接器 360 13.2.4 清理从数据库获取_x00B_的文本内容 363 13.2.5 查询数据库并显示_x00B_结果 364 13.3 使用SQL与数据库_x00B_交互 371 13.3.1 编写SQL查询 371 13.3.2 优化由SELECT查询_x00B_检索的数据 373 13.4 了解SQL注入的_x00B_危险性 376 13.5 使用准备好的语句处理_x00B_用户输入 381 13.5.1 在MySQLi中将变量嵌_x00B_入准备好的语句中 382 13.5.2 在PDO中将变量嵌入_x00B_准备好的语句中 387 13.6 本章回顾 394 第14章 创建动态图片库 397 14.1 不在数据库中存储图像_x00B_的原因 398 14.2 规划画廊 398 14.3 将图片库静态页面上的_x00B_元素转换为PHP 400 14.4 构建动态元素 403 14.4.1 通过查询字符串传递_x00B_信息 403 14.4.2 创建有多列的表 407 14.4.3 分页显示数量较多的_x00B_记录 409 14.5 本章回顾 416 第15章 数据库内容管理 417 15.1 建立内容管理系统 417 15.1.1 创建blog数据库表 418 15.1.2 创建基本的插入和_x00B_更新表单 419 15.1.3 插入新记录 421 15.1.4 链接到更新和删除_x00B_页面 425 15.1.5 更新记录 429 15.1.6 删除记录 439 15.2 4个基本SQL命令的_x00B_语法 440 15.2.1 SELECT命令 441 15.2.2 INSERT命令 443 15.2.3 UPDATE命令 443 15.2.4 DELETE命令 444 15.3 安全和错误消息 444 15.4 本章回顾 445 第16章 格式化文本和日期 447 16.1 显示文本摘要 447 16.1.1 提取固定数量的_x00B_字符 447 16.1.2 在一个完整的单词上_x00B_结束摘录 449 16.1.3 提取**段文件 450 16.1.4 显示段落 450 16.1.5 提取完整的语句 452 16.2 构建日期 456 16.2.1 MySQL处理日期的_x00B_方式 456 16.2.2 在MySQL中插入_x00B_日期 460 16.2.3 在PHP中处理日期 466 16.3 本章回顾 481 第17章 从多个表中抽取数据 483 17.1 理解表的关系 483 17.2 将图片关联到文章 485 17.2.1 改变现有表的结构 485 17.2.2 在表中插入外键 487 17.2.3 从多张表中选择_x00B_记录 493 17.2.4 查询不包含匹配外键_x00B_的记录 498 17.2.5 创建智能链接 500 17.3 本章回顾 501 第18章 管理多个数据库表 503 18.1 维护引用完整性 503 18.1.1 支持事务和外键_x00B_约束 504 18.1.2 将记录插入多个_x00B_表中 507 18.1.3 创建交叉引用表 508 18.1.4 获取上传图片的_x00B_文件名 509 18.1.5 修改插入表单以处理_x00B_多个表 510 18.2 更新和删除多个表中的_x00B_记录 523 18.2.1 更新交叉引用表中_x00B_的记录 523 18.2.2 将多个查询视为事务_x00B_中的一个块 526 18.2.3 在删除记录时保留_x00B_引用完整性 534 18.2.4 创建具有外键约束的_x00B_删除脚本 538 18.2.5 创建没有外键约束的_x00B_删除脚本 539 18.3 本章回顾 540 第19章 使用数据库进行用户_x00B_身份验证 541 19.1 选择密码存储方法 541 19.2 使用散列密码 542 19.2.1 创建表来存储用户的_x00B_详细信息 542 19.2.2 在数据库中注册_x00B_新用户 542 19.3 使用密钥加密 550 19.3.1 创建用于存储用户_x00B_详细信息的表 550 19.3.2 注册新用户 551 19.3.3 使用双向加密的用户_x00B_身份验证 553 19.3.4 解密密码 554 19.4 更新用户的详细信息 555 19.5 后续学习 555 _x00C_ _x00C_
展开全部

作者简介

David Powers已经累计发布了三十多个关于PHP的视频培训课程和书籍。这些课程和书籍都非常成功。他以前是BBC电台和电视台的记者,在任职记者期间,花费了很大一部分时间在日本报道泡沫经济的兴衰。他擅长用简单且通俗易懂的语言分析复杂的问题。这种能力也体现在他的关于PHP和Web开发的文章中。 David*初是在20世纪90年代初作为BBC日本电视台的编辑参与网络开发。由于没有营销预算,他开发了一个双语网站来推广这个渠道。离开BBC以后,他继续为一家国际咨询公司开发双语在线数据库,并在英国两所大学讲授网络开发课程。除了写作和制作视频培训课程外,他还是北伦敦一家慈善机构的受托人。该慈善机构为退休人员和不再全职工作的人员提供教育设施。

预估到手价 ×

预估到手价是按参与促销活动、以最优惠的购买方案计算出的价格(不含优惠券部分),仅供参考,未必等同于实际到手价。

确定
快速
导航