, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , 中 文翻译 设置 开发环境 对于个不折不扣新手来说 ,将 个工作中的开发环境放在起是可怕的。 随着这本书 的章节 ,你将 学习到在你本地机器上正确安装运行 和 。 它经常需要在本地测试速度和安全性。这样做既 可以 保护你的 开发中的版本免于受到 开放式互联网 的威胁 并缩短 往 个 服务器 上传文件 并且等待页面 重新载入所需要的时间。 为什么你需要 , 和 是种功能强大的脚本语言, 它可以在任何已安装 的电脑上通过命令行自行运行 。然而, 本身是不足以 建立 动态 网页 的。要 想 在网站上 使用 ,你需要个 可以处理 脚本 的服务器 。 是个免费的服务器,旦安装在计算机上,开发人员 能可 在本地测试 脚本,这使得它成为 你的开发 环境 中十分重要的部分 。 此外,动态网站 依赖的可快速 轻易修改地存储信息 ,这是个动态 网页 和个静态 网页 之间的主要区别。然而, 不提供种简单,高效的方式来存储数据。这时 个关系型数据库 管理系统 如 发挥了作用。本 书的例子 基于 。我选择该数据库是 因为 对它提供本地支持 和 该数据库是免费的 开源 的 项目。 它 在 位和 位环境 下都能运行 ,但 环境下 唯 的 官方分布 版本 是 位, 当在 位环境下使用 服务器时需要设置成 位兼容模式。也有支持 位 环境的第三方发布版本。 是 种通用的脚本语言,特别适合于 开发。 通常 运行在 台 服务器上,以 代码 为输入并 创建 网页作为输出 。 它也可以应用于命令行脚本和客户端 应用程序。 可以配置在大多数的 服务器上,多种操作系统和平台上并可以和多种关系型数据库管理系统配合使用。它是免费提供的, 团队提供完整的源代码供用户创建 ,定制和扩展 他们 自己使用 。 主要作为个过滤器, 从文件或包含文本和 或 指令 的 流中提取输入,然后输出其它的 数据流 。最常见的输出是 。它可以自动检测用户的语言。从 开始 , 解析器编译 输入,并产生字节码供 引擎 处理 的, 提高了其编译器预处理器的性能 。 在我写这篇文章时, 是最新的稳定版本,但 和 计划在不久的将来发布。 仍然 在 定数量的 服务器上 使用 , 但已经停止了对它的支持 。许多托管公司 让开发者在 他们的 网站上 使用 或 。 的起源 最初 代表 个人主页 并是个免费开源的项目。 它 开始 于 年 ,是 丹麦 格陵兰程序员 雷斯莫斯 勒道夫用 编程语言编写的个通用网关接口 二进制文件集。 勒道夫 最初创建这些个人主页 工具 来 取代小部分 脚本, 他直用该脚本来维护他的个人主页。这些工具用于执行任务,例如显示 他的 简历和记录访问他 页面 的流量 。他这些二进制文件 和表单解释器结合起来 创建 具有更多功能的 。 包括 了 个 更 大的 编程语言实现,可以和 数据库 进行通信 , 创建 简单的,动态 应用程序。勒道夫在 年 月 日 公开发布 ,加快定位 ,提高 代码性能。该版本被命名为 , 并 已经 具有了当今 版本所拥有的 基本功能。这包括类 变量,表格处理,以及 嵌入 网页的能力。其语法 与 类似 ,但比较有限, 更简单且 不太致 。泽夫 苏拉斯基 和 安迪 古曼兹 , 两位在以色列理工学院的以色列开发者 于 年重写了改 分析器,形成了 的基础, 将该 语言的名称 改为 递归缩写 超文本预处理器 。 经过几个月的测试版测试后, 开发团队在 年 月正式发布 。后来, 的公开测试开始, 并 在 年 月正式发布。苏拉斯基 和 古曼兹 然后开始 再次重写 核心 , 并 在 年 开发出 了 。他们还 在以色列的 拉马特 甘 成立了 技术。 年 月 日 , 支持 的 发布 。 年 月 日, 支持新的 的 发布。 中包括 新的功能 诸如 提高了对 面向对象编程 的 支持, 数据对象扩展定义用于访问数据库的轻量级和致的接口和许多性能提升 。 团队最近 发布的 更新 是 针对更老的 代码分支 的 。 年 月,该代码分支升级到 版本, 不再被开发且关于它的安全更新也不