当前位置:首页 > 编程电子书 >

PHP和MySQL Web开发(第4版) PDF 中文版

大小:51.6 MB已被687人关注 资源下载

PHP和MySQL Web开发(第4版)》是一本PHP相关的电子书资源,介绍了关于PHP、MySQL、Web开发方面的内容,本书是由机械工业出版社出版,格式为,资源大小51.6 MB,威利,汤姆森编写,目前豆瓣、亚马逊、当当、京东等“PHP”类电子书综合评分为:9.8分

内容介绍

本书将PHP开发与MySQL应用相结合,分别对PHP和MySQL做了深入浅出的分析,不仅介绍PHP和MySQL的一般概念,而且对PHP和MySQL的Web应用做了较全面的阐述,并包括几个经典且实用的例子。

本书是第4版,经过了全面的更新、重写和扩展,包括PHP 5.3*改进的特性(例如,更好的错误和异常处理),MySQL的存储过程和存储引擎,Ajax技术与Web 2.0以及Web应用需要注意的安全问题。

PHP平IEIMySQL是非常流行的开源技术,它们非常适合快速开发数据库驱动的Web应用。PHP是一种功能强大的脚本语言,专门用于快速创建高性能的Web应用,而MySQL则是一个快速而又可靠的数据库,它能很好地与PHP集成,适用于基于互联网的动态应用。

本书介绍了如何使用这些工具创建高效和交互式的Web应用。它清晰地介绍了PHP语言的基础,解释了如何设置和使用MySQL数据,以及如何使用PHP与数据库和服务器进行交互。

本书非常实用,包括大量实际应用中的例子。例如,用户验证、创建购物车、动态生成PDF文档和图像、发送和管理电子邮件、管理用户讨论、使用XML连接Web服务,以及使用基于Ajax的交互性开发Web 2.0应用。

与上一版相比,本书经过了更新、重写以及扩展,并涵盖了PHP 5到5.3的所有特性,例如命名空间和闭包以及MySQL 5.1引入的特性。

作者介绍

Laura Thomson,Mozilla公司的高级软件工程师。之前,她是OmniTI公司和Tangled Web Design公司的合伙人。此外,Laura曾经在RMIT大学和波士顿顾问集团工作过。她获得了应用科学(计算机科学)的学士学位和工程学(计算机系统工程)学士学位。在她的空闲时间,她非常喜欢骑马,讨论免费软件和开源软件以及睡觉。

Luke Welling,OmniTI公司的一位Web架构师,他经常在一些国际会议(例如,OSCON,ZendCon,MySQLUC,HPCon,OSDC以及LinuxTag)中就开源和Web开发的话题发表演讲。在加入OmniTI公司之前,他曾作为数据库提供商的Web分析师为Hitwise.com公司工作。此外,他还是Tangled Web Design公司的独立顾问。他还在澳大利亚墨尔本的RMIT大学教授计算机科学课程。他获得了应用科学(计算机科学)的学士学位。在他的空闲时间,他希望治好他的失眠症。

其他参与者:

Julie C. Meloni,i2i Interactive公司的技术总监,这是一家位于加利弗里亚Los Altos的多媒体公司。她从Web一问世以及出现首个GUI Web浏览器时就致力于基于Web的应用开发。她编著过大量书籍,撰写过大量关于Web开发语言和数据的问题,其中包括销售情况良好的《Sams Teach Yourself PHP, MySQL, and Apache All in One》。

Adam DeFields,Web应用开发方面,项目管理以及UI设计方面的顾问。他居住在密歇根的Grand Rapids。在这个城市,有他自己的公司Emanation Systems,LLC,这是一家在2002年成立的公司。他参加过使用不同技术实现的Web开发项目,但是,他还是最喜欢开发基于PHP/MySQL的项目。

Marc Wandschneider,一个软件开发方面的自由职业者,此外他还是作家和演讲者,经常在全球范围参与有意思的项目开发。最近,他的注意力集中在编写健壮和可扩展的Web应用。在2005年,他编写了一本名为《Core Web Application Programming with PHP and MySQL》的图书。此前,他是SWiK开源社区的主要开发人员。目前,Marc居住在北京,他将他的时间花在中文学习和编程。

目录

  • 读者反馈
  • 译者序
  • 前言
  • 作者简介
  • 第一篇 使用PHP
  • 第1章 PHP快速入门教程
  • 1.1 开始之前:了解PHP
  • 1.2 创建一个示例应用:Bob汽车零部件商店
  • 1.2.1 创建订单表单
  • 1.2.2 表单处理
  • 1.3 在HTML中嵌入PHP
  • 1.3.1 使用PHP标记
  • 1.3.2 PHP语句
  • 1.3.3 空格
  • 1.3.4 注释
  • 1.4 添加动态内容
  • 1.4.1 调用函数
  • 1.4.2 使用date()函数
  • 1.5 访问表单变量
  • 1.5.1 简短、中等以及长风格的表单变量
  • 1.5.2 字符串的连接
  • 1.5.3 变量和文本
  • 1.6 理解标识符
  • 1.7 检查变量类型
  • 1.7.1 PHP的数据类型
  • 1.7.2 类型强度
  • 1.7.3 类型转换
  • 1.7.4 可变变量
  • 1.8 声明和使用常量
  • 1.9 理解变量的作用域
  • 1.10 使用操作符
  • 1.10.1 算术操作符
  • 1.10.2 字符串操作符
  • 1.10.3 赋值操作符
  • 1.10.4 比较操作符
  • 1.10.5 逻辑操作符
  • 1.10.6 位操作符
  • 1.10.7 其他操作符
  • 1.11 计算表单总金额
  • 1.12 理解操作符的优先级和结合性:
  • 1.13 使用可变函数
  • 1.13.1 测试和设置变量类型
  • 1.13.2 测试变量状态
  • 1.13.3 变量的重解释
  • 1.14 根据条件进行决策
  • 1.14.1 if语句
  • 1.14.2 代码块
  • 1.14.3 else语句
  • 1.14.4 elseif语句
  • 1.14.5 switch语句
  • 1.14.6 比较不同的条件
  • 1.15 通过迭代实现重复动作
  • 1.15.1 while循环
  • 1.15.2 for和foreach循环
  • 1.15.3 do...while循环
  • 1.16 从控制结构或脚本中跳出
  • 1.17 使用可替换的控制结构语法
  • 1.18 使用declare
  • 1.19 下一章
  • 第2章 数据的存储与检索
  • 2.1 保存数据以便后期使用
  • 2.2 存储和检索Bob的订单
  • 2.3 文件处理
  • 2.4 打开文件
  • 2.4.1 选择文件模式
  • 2.4.2 使用fopen()打开文件
  • 2.4.3 通过FTP或HTTP打开文件
  • 2.4.4 解决打开文件时可能遇到的问题
  • 2.5 写文件
  • 2.5.1 fwrite()的参数
  • 2.5.2 文件格式
  • 2.6 关闭文件
  • 2.7 读文件
  • 2.7.1 以只读模式打开文件:fopen()
  • 2.7.2 知道何时读完文件:feof()
  • 2.7.3 每次读取一行数据:fgets()、fgetss()和fgetcsv()
  • 2.7.4 读取整个文件:readfile()、fpassthru()和file()
  • 2.7.5 读取一个字符:fgetc()
  • 2.7.6 读取任意长度:fread()
  • 2.8 使用其他有用的文件函数
  • 2.8.1 查看文件是否存在:file_exists()
  • 2.8.2 确定文件大小:filesize()
  • 2.8.3 删除一个文件:unlink()
  • 2.8.4 在文件中定位:rewind()、fseek()和ftell()
  • 2.9 文件锁定
  • 2.10 更好的方式:数据库管理系统
  • 2.10.1 使用普通文件的几个问题
  • 2.10.2 RDBMS是如何解决这些问题的
  • 2.11 进一步学习
  • 2.12 下一章
  • 第3章 使用数组
  • 3.1 什么是数组
  • 3.2 数字索引数组
  • 3.2.1 数字索引数组的初始化
  • 3.2.2 访问数组的内容
  • 3.2.3 使用循环访问数组
  • 3.3 使用不同索引的数组
  • 3.3.1 初始化相关数组
  • 3.3.2 访问数组元素
  • 3.3.3 使用循环语句
  • 3.4 数组操作符
  • 3.5 多维数组
  • 3.6 数组排序
  • 3.6.1 使用sort()函数
  • 3.6.2 使用asort()函数和ksort()函数对相关数组排序
  • 3.6.3 反向排序
  • 3.7 多维数组的排序
  • 3.7.1 用户定义排序
  • 3.7.2 反向用户排序
  • 3.8 对数组进行重新排序
  • 3.8.1 使用shuffle()函数
  • 3.8.2 使用array_reverse()函数
  • 3.9 从文件载入数组
  • 3.10 执行其他的数组操作
  • 3.10.1 在数组中浏览:each()、current()、reset()、end()、next()、pos()和prev()
  • 3.10.2 对数组的每一个元素应用任何函数:array_walk()
  • 3.10.3 统计数组元素个数:count()、sizeof()和array_count_values()
  • 3.10.4 将数组转换成标量变量:extract()
  • 3.11 进一步学习
  • 3.12 下一章
  • 第4章 字符串操作与正则表达式
  • 4.1 创建一个示例应用程序:智能表单邮件
  • 4.2 字符串的格式化
  • 4.2.1 字符串的整理:chop()、ltrim()和trim()
  • 4.2.2 格式化字符串以便显示
  • 4.2.3 格式化字符串以便存储:addslashes()和stripslashes()
  • 4.3 用字符串函数连接和分割字符串
  • 4.3.1 使用函数explode()、implode()和join()
  • 4.3.2 使用strtok()函数
  • 4.3.3 使用substr()函数
  • 4.4 字符串的比较
  • 4.4.1 字符串的排序:strcmp()、strcasecmp()和strnatcmp()
  • 4.4.2 使用strlen()函数测试字符串的长度
  • 4.5 使用字符串函数匹配和替换子字符串
  • 4.5.1 在字符串中查找字符串:strstr()、strchr()、strrchr()和stristr()
  • 4.5.2 查找子字符串的位置:strpos()、strrpos()
  • 4.5.3 替换子字符串:str_replace()、substr_replace()
  • 4.6 正则表达式的介绍
  • 4.6.1 基础知识
  • 4.6.2 字符集和类
  • 4.6.3 重复
  • 4.6.4 子表达式
  • 4.6.5 子表达式计数
  • 4.6.6 定位到字符串的开始或末尾
  • 4.6.7 分支
  • 4.6.8 匹配特殊字符
  • 4.6.9 特殊字符一览
  • 4.6.10 在智能表单中应用
  • 4.7 用正则表达式查找子字符串
  • 4.8 使用正则表达式分割字符串
  • 4.9 比较字符串函数和正则表达式函数
  • 4.10 进一步学习
  • 4.11 下一章
  • 第5章 代码重用与函数编写
  • 5.1 代码重用的好处
  • 5.1.1 成本
  • 5.1.2 可靠性
  • 5.1.3 一致性
  • 5.2 使用require()和include()函数
  • 5.2.1 文件扩展名和require()语句
  • 5.2.2 使用require()制作Web站点的模版
  • 5.2.3 使用auto_prepend_file和auto_append_file
  • 5.3 在PHP中使用函数
  • 5.3.1 调用函数
  • 5.3.2 调用未定义的函数
  • 5.3.3 理解字母大小写和函数名称
  • 5.4 理解为什么要定义自己的函数
  • 5.5 了解基本的函数结构
  • 5.5.1 函数命名
  • 5.6 使用参数
  • 5.7 理解作用域
  • 5.8 参数的引用传递和值传递
  • 5.9 使用Return关键字
  • 5.9.1 从函数返回一个值
  • 5.10 实现递归
  • 5.10.1 名称空间
  • 5.11 进一步学习
  • 5.12 下一章
  • 第6章 面向对象的PHP
  • 6.1 理解面向对象的概念
  • 6.1.1 类和对象
  • 6.1.2 多态性
  • 6.1.3 继承
  • 6.2 在PHP中创建类、属性和操作
  • 6.2.1 类的结构
  • 6.2.2 构造函数
  • 6.2.3 析构函数
  • 6.3 类的实例化
  • 6.4 使用类的属性
  • 6.5 使用private和public关键字控制访问
  • 6.6 类操作的调用
  • 6.7 在PHP中实现继承
  • 6.7.1 通过继承使用private和protected访问修饰符控制可见性
  • 6.7.2 重载
  • 6.7.3 使用final关键字禁止继承和重载
  • 6.7.4 理解多重继承
  • 6.7.5 实现接口
  • 6.8 类的设计
  • 6.9 编写类代码
  • 6.10 理解PHP面向对象新的高级功能
  • 6.10.1 使用Per-Class常量
  • 6.10.2 实现静态方法
  • 6.10.3 检查类的类型和类型提示
  • 6.10.4 克隆对象
  • 6.10.5 使用抽象类
  • 6.10.6 使用__call()重载方法
  • 6.10.7 使用__autoload()方法
  • 6.10.8 实现迭代器和迭代
  • 6.10.9 将类转换成字符串
  • 6.10.10 使用Reflection(反射)API
  • 6.11 下一章
  • 第7章 错误和 异常处理
  • 7.1 异常处理的概念
  • 7.2 Exception类
  • 7.3 用户自定义异常
  • 7.4 Bob的汽车零部件商店应用程序的异常
  • 7.5 异常和PHP的其他错误处理机制
  • 7.6 进一步学习
  • 7.7 下一章
  • 第二篇 使用MySQL
  • 第8章 设计Web数据库
  • 8.1 关系数据库的概念
  • 8.1.1 表格
  • 8.1.2 列
  • 8.1.3 行
  • 8.1.4 值
  • 8.1.5 键
  • 8.1.6 模式
  • 8.1.7 关系
  • 8.2 如何设计Web数据库
  • 8.2.1 考虑要建模的实际对象
  • 8.2.2 避免保存冗余数据
  • 8.2.3 使用原子列值
  • 8.2.4 选择有意义的键
  • 8.2.5 考虑需要询问数据库的问题
  • 8.2.6 避免多个空属性的设计
  • 8.2.7 表格类型的总结
  • 8.3 Web数据库架构
  • 8.4 进一步学习
  • 8.5 下一章
  • 第9章 创建Web数据库
  • 9.1 使用MySQL监视程序
  • 9.2 登录到MySQL
  • 9.3 创建数据库和用户
  • 9.4 设置用户与权限
  • 9.5 MySQL权限系统的介绍
  • 9.5.1 最少权限原则
  • 9.5.2 创建用户:GRANT命令
  • 9.5.3 权限的类型和级别
  • 9.5.4 REVOKE命令
  • 9.5.5 使用GRANT和REVOKE的例子
  • 9.6 创建一个Web用户
  • 9.7 使用正确的数据库
  • 9.8 创建数据库表
  • 9.8.1 理解其他关键字的意思
  • 9.8.2 理解列的类型
  • 9.8.3 用SHOW和DESCRIBE来查看数据库
  • 9.8.4 创建索引
  • 9.9 理解MySQL的标识符
  • 9.10 选择列数据类型
  • 9.10.1 数字类型
  • 9.10.2 日期和时间类型
  • 9.10.3 字符串类型
  • 9.11 进一步学习
  • 9.12 下一章
  • 第10章 使用MySQL数据库
  • 10.1 SQL是什么
  • 10.2 在数据库中插入数据
  • 10.3 从数据库中获取数据
  • 10.3.1 获取满足特定条件的数据
  • 10.3.2 从多个表中获取数据
  • 10.3.3 以特定的顺序获取数据
  • 10.3.4 分组与合计数据
  • 10.3.5 选择要返回的行
  • 10.3.6 使用子查询
  • 10.4 更新数据库记录
  • 10.5 创建后修改表
  • 10.6 删除数据库中的记录
  • 10.7 表的删除
  • 10.8 删除整个数据库
  • 10.9 进一步学习
  • 10.10 下一章
  • 第11章 使用PHP从Web访问MySQL数据库
  • 11.1 Web数据库架构的工作原理
  • 11.2 从Web查询数据库的基本步骤
  • 11.2.1 检查与过滤用户输入数据
  • 11.2.2 建立一个连接
  • 11.2.3 选择使用的数据库
  • 11.2.4 查询数据库
  • 11.2.5 检索查询结果
  • 11.2.6 从数据库断开连接
  • 11.3 将新信息放入数据库
  • 11.4 使用Prepared语句
  • 11.5 使用PHP与数据库交互的其他接口
  • 11.5.1 使用常规的数据库接口:PEAR MDB2
  • 11.6 进一步学习
  • 11.7 下一章
  • 第12章 MySQL高级管理
  • 12.1 深入理解权限系统
  • 12.1.1 user表
  • 12.1.2 db表和host表
  • 12.1.3 tables_priv表,columns_priv表和procs_priv表
  • 12.1.4 访问控制:MySQL如何使用Grant表
  • 12.1.5 更新权限:修改什么时候生效
  • 12.2 提高MySQL数据库的安全性
  • 12.2.1 从操作系统角度来保护MySQL
  • 12.2.2 密码
  • 12.2.3 用户权限
  • 12.2.4 Web问题
  • 12.3 获取更多关于数据库的信息
  • 12.3.1 使用SHOW获取信息
  • 12.3.2 使用DESCRIBE获取关于列的信息
  • 12.3.3 用EXPLAIN理解查询操作的工作过程
  • 12.4 数据库的优化
  • 12.4.1 设计优化
  • 12.4.2 权限
  • 12.4.3 表的优化
  • 12.4.4 使用索引
  • 12.4.5 使用默认值
  • 12.4.6 其他技巧
  • 12.5 备份MySQL数据库
  • 12.6 恢复MySQL数据库
  • 12.7 实现复制
  • 12.7.1 设置主服务器
  • 12.7.2 执行初始的数据传输
  • 12.7.3 设置一个/多个从服务器
  • 12.8 进一步学习
  • 12.9 下一章
  • 第13章 MySQL高级编程
  • 13.1 LOAD DATA INFILE语句
  • 13.2 存储引擎
  • 13.3 事务
  • 13.3.1 理解事务的定义
  • 13.3.2 通过InnoDB使用事务
  • 13.4 外键
  • 13.5 存储过程
  • 13.5.1 基本示例
  • 13.5.2 局部变量
  • 13.5.3 游标和控制结构
  • 13.6 进一步学习
  • 13.7 下一章
  • 第三篇 电子商务与安全性
  • 第14章 运营一个电子商务网站
  • 14.1 我们要实现什么目标
  • 14.2 考虑电子商务网站的类型
  • 14.2.1 使用在线说明书公布信息
  • 14.2.2 接收产品或服务的订单
  • 14.2.3 提供服务和数字产品
  • 14.2.4 为产品或服务增值
  • 14.2.5 减少成本
  • 14.3 理解风险和威胁
  • 14.3.1 网络黑客
  • 14.3.2 不能招揽足够的生意
  • 14.3.3 计算机硬件故障
  • 14.3.4 电力、通信、网络或运输故障
  • 14.3.5 广泛的竞争
  • 14.3.6 软件错误
  • 14.3.7 不断变化的政府政策和税收
  • 14.3.8 系统容量限制
  • 14.4 选择一个策略
  • 14.5 下一章
  • 第15章 电子商务的安全问题
  • 15.1 信息的重要程度
  • 15.2 安全威胁
  • 15.2.1 机密数据的泄露
  • 15.2.2 数据丢失和数据破坏
  • 15.2.3 数据修改
  • 15.2.4 拒绝服务
  • 15.2.5 软件错误
  • 15.2.6 否认
  • 15.3 易用性,性能、成本和安全性
  • 15.4 建立一个安全政策
  • 15.5 身份验证原则
  • 15.6 加密技术基础
  • 15.6.1 私有密钥加密
  • 15.6.2 公有密钥加密
  • 15.6.3 数字签名
  • 15.7 数字证书
  • 15.8 安全的Web服务器
  • 15.9 审计与日志记录
  • 15.10 防火墙
  • 15.11 备份数据
  • 15.11.1 备份常规文件
  • 15.11.2 备份与恢复MySQL数据库
  • 15.12 自然环境安全
  • 15.13 下一章
  • 第16章 Web应用的安全
  • 16.1处理安全性问题的策略
  • 16.1.1 以正确心态为开始
  • 16.1.2 安全性和可用性之间的平衡
  • 16.1.3 安全监视
  • 16.1.4 基本方法
  • 16.2 识别所面临的威胁
  • 16.2.1 访问或修改敏感数据
  • 16.2.2 数据丢失或破坏
  • 16.2.3 拒绝服务
  • 16.2.4 恶意代码注入
  • 16.2.5 服务器被攻破
  • 16.3了解与我们“打交道”的用户
  • 16.3.1 破解人员
  • 16.3.2 受影响机器的未知情用户
  • 16.3.3 对公司不满的员工
  • 16.3.4 硬件被盗
  • 16.3.5 我们自身
  • 16.4 代码的安全性
  • 16.4.1 过滤用户输入
  • 16.4.2 转义输出
  • 16.4.3 代码组织
  • 16.4.4 代码自身的问题
  • 16.4.5 文件系统因素
  • 16.4.6 代码稳定性和缺陷
  • 16.4.7 执行引号和exec
  • 16.5 Web服务器和PHP的安全性
  • 16.5.1 保持软件的更新
  • 16.5.2 查看php.ini文件
  • 16.5.3 Web服务器配置
  • 16.5.4 Web应用的商业主机服务
  • 16.6 数据库服务器的安全性
  • 16.6.1 用户和权限系统
  • 16.6.2发送数据至服务器
  • 16.6.3 连接服务器
  • 16.6.4 运行服务器
  • 16.7 保护网络
  • 16.7.1 安装防火墙
  • 16.7.2使用隔离区域(DMZ)
  • 16.7.3应对DoS和DDoS攻击
  • 16.8 计算机和操作系统的安全性
  • 16.8.1 保持操作系统的更新
  • 16.8.2只运行必须的软件
  • 16.8.3 服务器的物理安全性
  • 16.9 灾难计划
  • 16.10 下一章
  • 第17章 使用PHP和MySQL实现身份验证
  • 17.1 识别访问者
  • 17.2 实现访问控制
  • 17.2.1 保存密码
  • 17.2.2 密码的加密
  • 17.2.3 保护多个网页
  • 17.3 使用基本身份验证
  • 17.4 在PHP中使用基本身份验证
  • 17.5 在Apache的.htaccess文件中使用基本身份验证
  • 17.6 使用mod_auth_mysql身份验证
  • 17.6.1 安装mod_auth_mysql
  • 17.6.2 使用mod_auth_mysql
  • 17.7 创建自定义身份验证
  • 17.8 进一步学习
  • 17.9 下一章
  • 第18章 使用PHP和MySQL实现安全事务
  • 18.1 提供安全的事务处理
  • 18.1.1 用户机器
  • 18.1.2 Internet
  • 18.1.3 我们的系统
  • 18.2 使用加密套接字层(SSL)
  • 18.3 屏蔽用户的输入
  • 18.4 提供安全存储
  • 18.5 存储信用卡号码
  • 18.6 在PHP中使用加密技术
  • 18.6.1 安装GPG
  • 18.6.2 测试GPG
  • 18.7 进一步学习
  • 18.8 下一章
  • 第四篇 PHP的高级技术
  • 第19章 与文件系统和服务器的交互
  • 19.1 文件上载
  • 19.1.1 文件上载的HTML代码
  • 19.1.2 编写处理文件的PHP
  • 19.1.3 避免常见上载问题
  • 19.2 使用目录函数
  • 19.2.1 从目录读取
  • 19.2.2 获得当前目录的信息
  • 19.2.3 创建和删除目录
  • 19.3 与文件系统的交互
  • 19.3.1 获取文件信息
  • 19.3.2 更改文件属性
  • 19.3.3 创建、删除和移动文件
  • 19.4 使用程序执行函数
  • 19.5 与环境变量交互:getenv()和putenv()
  • 19.6 进一步学习
  • 19.7 下一章
  • 第20章 使用网络函数和协议函数
  • 20.1 了解可供使用的协议
  • 20.2 发送和读取电子邮件
  • 20.3 使用其他Web站点的数据
  • 20.4 使用网络查找函数
  • 20.5 备份或镜像一个文件
  • 20.5.1 使用FTP备份或镜像一个文件
  • 20.5.2 上传文件
  • 20.5.3 避免超时
  • 20.5.4 使用其他的FTP函数
  • 20.6 进一步学习
  • 20.7 下一章
  • 第21章 日期和时间的管理
  • 21.1 在PHP中获取日期和时间
  • 21.1.1 使用date()函数
  • 21.1.2 使用UNIX时间戳
  • 21.1.3 使用getdate()函数
  • 21.1.4 使用checkdate()函数检验日期有效性
  • 21.1.5 格式化时间戳
  • 21.2 在PHP日期格式和MySQL日期格式之间进行转换
  • 21.3 在PHP中计算日期
  • 21.4 在MySQL中计算日期
  • 21.5 使用微秒
  • 21.6 使用日历函数
  • 21.7 进一步学习
  • 21.8 下一章
  • 第22章 创建图像
  • 22.1 在PHP中设置图像支持
  • 22.2 理解图像格式
  • 22.2.1 JPEG
  • 22.2.2 PNG
  • 22.2.3 WBMP
  • 22.2.4 GIF
  • 22.3 创建图像
  • 22.3.1 创建一个背景图像
  • 22.3.2 在图像上绘图或打印文本
  • 22.3.3 输出最终图形
  • 22.3.4 清理
  • 22.4 在其他页面中使用自动生成的图像
  • 22.5 使用文本和字体创建图像
  • 22.5.1 创建基本画布
  • 22.5.2 将文本调整到适合按钮
  • 22.5.3 放置文本
  • 22.5.4 将文本写到按钮上
  • 22.5.5 完成
  • 22.6 绘制图像与用图表描绘数据
  • 22.7 使用其他的图像函数
  • 22.8 进一步学习
  • 22.9 下一章
  • 第23章 在PHP中使用会话控制
  • 23.1 什么是会话控制
  • 23.2 理解基本的会话功能
  • 23.2.1 什么是cookie
  • 23.2.2 通过PHP设置cookie
  • 23.2.3 在会话中使用cookie
  • 23.2.4 存储会话 ID
  • 23.3 实现简单的会话
  • 23.3.1 开始一个会话
  • 23.3.2 注册一个会话变量
  • 23.3.3 使用会话变量
  • 23.3.4 注销变量与销毁会话
  • 23.4 创建一个简单的会话例子
  • 23.5 配置会话控制
  • 23.6 通过会话控制实现身份验证
  • 23.7 进一步学习
  • 23.8 下一章
  • 第24章 其他有用的特性
  • 24.1 使用eval()函数对字符串求值
  • 24.2 终止执行:die和exit
  • 24.3 序列化变量和对象
  • 24.4 获取PHP环境信息
  • 24.4.1 找到所加载的PHP扩展部件
  • 24.4.2 识别脚本所有者
  • 24.4.3 确定脚本最近修改时间
  • 24.5 暂时改变运行时环境
  • 24.6 源代码加亮
  • 24.7 在命令行中使用PHP
  • 24.8 下一章
  • 第五篇 创建实用的PHP和MySQL项目
  • 第25章 在大型项目中使用PHP和MySQL
  • 25.1 在Web开发中应用软件工程
  • 25.2 规划和运行Web应用程序项目
  • 25.3 重用代码
  • 25.4 编写可维护代码
  • 25.4.1 编码标准
  • 25.4.2 分解代码
  • 25.4.3 使用标准的目录结构
  • 25.4.4 文档化和共享内部函数
  • 25.5 实现版本控制
  • 25.6 选择一个开发环境
  • 25.7 项目的文档化
  • 25.8 建立原型
  • 25.9 将逻辑和内容分离
  • 25.10 优化代码
  • 25.10.1 使用简单优化
  • 25.10.2 使用Zend产品
  • 25.11 测试
  • 25.12 进一步学习
  • 25.13 下一章
  • 第26章 调试
  • 26.1 编程错误
  • 26.1.1 语法错误
  • 26.1.2 运行时错误
  • 26.1.3 逻辑错误
  • 26.2 使用变量帮助调试
  • 26.3 错误报告级别
  • 26.4 改变错误报告设置
  • 26.5 触发自定义错误
  • 26.6 巧妙地处理错误
  • 26.7 下一章
  • 第27章 建立用户身份验证机制和个性化设置
  • 27.1 解决方案的组成
  • 27.1.1 用户识别和个性化设置
  • 27.1.2 保存书签
  • 27.1.3 推荐书签
  • 27.2 解决方案概述
  • 27.3 实现数据库
  • 27.4 实现基本的网站
  • 27.5 实现用户身份验证
  • 27.5.1 注册
  • 27.5.2 登录
  • 27.5.3 登出
  • 27.5.4 修改密码
  • 27.5.5 重设遗忘的密码
  • 27.6 实现书签的存储和检索
  • 27.6.1 添加书签
  • 27.6.2 显示书签
  • 27.6.3 删除书签
  • 27.7 实现书签推荐
  • 27.8 考虑可能的扩展
  • 27.9 下一章
  • 第28章 创建一个购物车
  • 28.1 解决方案的组成
  • 28.1.1 创建一个在线目录
  • 28.1.2 在用户购买商品的时候记录购买行为
  • 28.1.3 实现一个付款系统
  • 28.1.4 创建一个管理界面
  • 28.2 解决方案概述
  • 28.3 实现数据库
  • 28.4 实现在线目录
  • 28.4.1 列出目录
  • 28.4.2 列出一个目录中的所有图书
  • 28.4.3 显示图书详细信息
  • 28.5 实现购物车
  • 28.5.1 使用show_cart.php脚本
  • 28.5.2 浏览购物车
  • 28.5.3 将物品添加到购物库
  • 28.5.4 保存更新后的购物车
  • 28.5.5 打印标题栏摘要
  • 28.5.6 结账
  • 28.6 实现付款
  • 28.7 实现一个管理界面
  • 28.8 扩展该项目
  • 28.9 使用一个已有系统
  • 28.10 下一章
  • 第29章 创建一个基于Web的电子邮件服务系统
  • 29.1 解决方案的组成
  • 29.1.1 电子邮件协议:POP3和IMAP
  • 29.1.2 PHP对POP3和IMAP的支持
  • 29.2 解决方案概述
  • 29.3 建立数据库
  • 29.4 了解脚本架构
  • 29.5 登录与登出
  • 29.6 建立账户
  • 29.6.1 创建一个新账户
  • 29.6.2 修改已有账户
  • 29.6.3 删除账户
  • 29.7 阅读邮件
  • 29.7.1 选择账户
  • 29.7.2 查看邮箱内容
  • 29.7.3 阅读邮件消息
  • 29.7.4 查看消息标题
  • 29.7.5 删除邮件
  • 29.8 发送邮件
  • 29.8.1 发送一则新消息
  • 29.8.2 回复或转发邮件
  • 29.9 扩展这个项目
  • 29.10 下一章
  • 第30章 创建一个邮件列表管理器
  • 30.1 解决方案的组成
  • 30.1.1 建立列表和订阅者数据库
  • 30.1.2 上载新闻信件
  • 30.1.3 发送带附件的邮件
  • 30.2 解决方案概述
  • 30.3 建立数据库
  • 30.4 定义脚本架构
  • 30.5 实现登录
  • 30.5.1 新账户的创建
  • 30.5.2 登录
  • 30.6 用户函数的实现
  • 30.6.1 查看列表
  • 30.6.2 查看邮件列表信息
  • 30.6.3 查看邮件列表存档
  • 30.6.4 订阅与取消订阅
  • 30.6.5 更改账户设置
  • 30.6.6 更改密码
  • 30.6.7 登出
  • 30.7 管理功能的实现
  • 30.7.1 创建新的邮件列表
  • 30.7.2 上载新的新闻信件
  • 30.7.3 多文件上载的处理
  • 30.7.4 预览新闻信件
  • 30.7.5 发送邮件
  • 30.8 扩展这个项目
  • 30.9 下一章
  • 第31章 创建一个Web论坛
  • 31.1 理解流程
  • 31.2 解决方案的组成
  • 31.3 解决方案概述
  • 31.4 数据库的设计
  • 31.5 查看文章的树型结构
  • 31.5.1 展开和折叠
  • 31.5.2 显示文章
  • 31.5.3 使用treenode类
  • 31.6 查看单个的文章
  • 31.7 添加新文章
  • 31.8 添加扩充
  • 31.9 使用一个已有的系统
  • 31.10 下一章
  • 第32章 生成PDF格式的个性化文档
  • 32.1 项目概述
  • 32.1.1 评估文档格式
  • 32.2 解决方案的组成
  • 32.2.1 问题与回答系统
  • 32.2.2 文档生成软件
  • 32.3 解决方案概述
  • 32.3.1 提问
  • 32.3.2 给答题评分
  • 32.3.3 生成RTF证书
  • 32.3.4 从模板生成PDF证书
  • 32.3.5 使用PDFlib生成PDF文档
  • 32.3.6 使用PDFlib的一个“Hello World”程序
  • 32.3.7 用PDFlib生成证书
  • 32.4 处理标题的问题
  • 32.5 扩展该项目
  • 32.6 下一章
  • 第33章 使用XML和SOAP来连接Web服务
  • 33.1 项目概述:使用XML和Web服务
  • 33.1.1 理解XML
  • 33.1.2 理解Web服务
  • 33.2 解决方案的组成
  • 33.2.1 使用Amazon的Web服务接口
  • 33.2.2 XML的解析:REST响应
  • 33.2.3 在PHP中使用SOAP
  • 33.2.4 缓存
  • 33.3 解决方案概述
  • 33.3.1 核心应用程序
  • 33.3.2 显示特定种类的图书
  • 33.3.3 获得一个AmazonResultSet类
  • 33.3.4 使用REST发送和接收请求
  • 33.3.5 使用SOAP发送和接收请求
  • 33.3.6 缓存请求返回的数据
  • 33.3.7 创建购物车
  • 33.3.8 到Amazon付账
  • 33.4 安装项目代码
  • 33.5 扩展这个项目
  • 33.6 进一步学习
  • 第34 章使用Ajax构建Web 2.0应用
  • 34.1 Ajax 是什么?
  • 34.1.1 HTTP请求和响应
  • 34.1. 2 DHTML和XHTML
  • 34.1.3 级联样式单(CSS)
  • 34.1.4 客户端编程
  • 34.1.5 服务器端编程
  • 34.1.6 XML和XSLT
  • 34.2 Ajax基础
  • 34.2.1 XMLHTTPRequest对象
  • 34.2.2 与服务器通信
  • 34.2.3 处理服务器响应
  • 34.2.4 整合应用
  • 34.3 在以前的项目添加Ajax元素
  • 34.3.1在PHPBookmark应用中添加Ajax元素
  • 34.4 进一步学习
  • 34.4.1 进一步了解文档对象模型(DOM)
  • 34.4.2 Ajax应用可用的JavaScript函数库
  • 34.4.3 Ajax开发人员网站
  • 第六篇 附录
  • 附录A 安装PHP及MySQL
  • 附录B Web资源
  • 第1章 PHP快速入门教程
  • 第2章 数据的存储与检索
  • 第3章 使用数组
  • 第4章 字符串操作与正则表达式
  • 第5章 代码重用与函数编写
  • 第6章 面向对象的PHP
  • 第7章 错误和异常处理

 

以上就是本次介绍的PHP相关电子书的全部内容,希望我们整理的资源能够帮助到大家,更多相关的电子书资源可以下面的相关资源中查找。

展开 +

收起 -

下载地址:百度网盘下载
读者心得分享
php+mongodb判断坐标是否在指定多边形区域内的实例

MongoDB是一个基于分布式文件存储的数据库,并提供创建基于地理空间的索引的能力,本文将提供使用PHP连接mongodb,判断坐标是否在指定多边形区域内的实例。 1.定义多边形区域 多边形的坐标点如下: 113.314882,23.163055 113.355845,23.167042 113.370289,23.149564 113.356779,23.129758 113.338238,23.13913 113.330979,23.124706 113.313588,23.140858 113.323865,23.158204 113.314882,23.163055 2.在mongodb创建数据库 use testdb;db.createUser( { "user":"root", "pwd":"123456", "roles":[{"role" : "readWrite", "db":"testdb"}] } );db.auth( { "user":"root", "pwd":"123456" } ); 3.使用php插入多边形数据,并判断坐标是否在区域内 MongoDBPolygons.class.php ?php/** * MongoDB 多边形区域类,判断坐标是否在多边形……

PHP文件上传类实例详解

本文实例讲述了PHP文件上传类。分享给大家供大家参考,具体如下: 这里演示了FileUpload.class.php文件上传类,其中用到了两个常量,可在网站配置文件中定义: define('ROOT_PATH',dirname(__FILE__)); //网站根目录define('UPDIR','/uploads/'); //上传主目录 具体代码如下: ?php //上传文件类 class FileUpload { private $error; //错误代码 private $maxsize; //表单最大值 private $type; //类型 private $typeArr = array('image/jpeg','image/pjpeg','image/png','image/x-png','image/gif'); //类型合集 private $path; //目录路径 private $today; //今天目录 private $name; //文件名 private $tmp; //临时文件 private $linkpath; //链接路径 private $linktotay; //今天目录(相对) //构造方法,初始化……

php redis 处理websocket聊天记录的实例代码

具体代码如下所示: ?phpini_set('display_errors', 'on');class chatClass { private $redis; //这个变量模拟用户当前状态,是否登录,是否可查看 public $checkUserReadable = false; //构造函数链接redis数据库 public function __construct() { $this - redis = new Redis(); $this - redis - connect('127.0.0.1', '6379'); $this - redis - auth('***cnblogs.com/handle'); } /* 发送消息时保存聊天记录 * 这里用的redis存储是list数据类型 * 两个人的聊天用一个list保存 * * @from 消息发送者id * @to 消息接受者id * @meassage 消息内容 * * 返回值,当前聊天的总聊天记录数 */ public function setChatRecord($from, $to, $message) { $data = array('from' = $from, 'to' = $to, 'message' = $message, 'sent' = time()/*, 'recd' = 0*/); ……

威利,汤姆森

石耀杰 提供上传

资源
25
粉丝
43
喜欢
187
评论
1

Copyright 2020-2021 www.fuhao321.com 编程软件库