2. 入门指南

未匹配的标注

使用当前稳定版本 (8.0)

如果你刚开始学习 PHP,请使用最新的稳定版本 PHP 8.0。 PHP 8.x 相较于7.x 和5.x 版本增加了许多 新特性。PHP 引擎大部分被重写,PHP 的运行速度比之前的版本更快。 PHP 8.0是一个重大更新,包含需要新功能和优化。

您应该尽快升级到最新文档版本 - PHP 5.6 已停止安全更新。升级很简单,因为 PHP8 没有很多的 向下不兼容。如果你不确定某个特性或方法的版本,可以在官方手册 php.net 中查找。

内置的 web 服务器

PHP 5.4 之后, 你可以不用安装和配置功能齐全的 Web 服务器,就可以开始学习 PHP。 要启动内置的 Web 服务器,需要从你的命令行终端进入项目的 Web 根目录,执行下面的命令:

> php -S localhost:8000

Mac 安装

macOS 系统会预装 PHP, 只是一般情况下版本会比最新稳定版低一些。有很多种方法可以安装最新版本的PHP。

通过 Homebrew 安装

Homebrew 是 macOS 上的一个包管理器,可以帮助你轻松的安装 PHP 和各种扩展。Homebrew 的核心仓库包含了 PHP 5.6,7.0, 7.1,7.2,7.3,7.4 和 PHP 8.0。通过下面的命令安装最新版 PHP:

brew install php@8.0

你可以通过修改 PATH 变量来切换 PHP 版本. 或者, 你可以使用 brew-php-switcher 来自动切换 PHP 版本。

用 Macports 安装 PHP

MacPorts 项目是一个致力于设计易用系统的开源社区,可以通过命令行, X11 或基于 Aqua 的开源软件在OS X 操作系统里使用。

MacPorts 支持预编译二进制文件, 因此你不需要再次编译依赖的源代码tar包, 它可以节省在系统上安装包的时间。

在这里,你可以使用 port install 命令来安装 php54, php55, php56, php70, php71, php72, php73, php74 or php80,例如:

sudo port install php74
sudo port install php80

你还可以通过 select 命令来切换你使用的 PHP 版本:

sudo port select --set php php80

用 phpbrew 安装 PHP

phpbrew 是一个用于安装和管理多个 PHP 版本的工具。 如果两个不同的应用程序/项目需要不同版本的 PHP,而且你没有使用虚拟机,这会非常有用。

用 Liip’s 命令集一键安装 PHP

另一个流行的选项是 php-osx.liip.ch ,它为 5.3 到 7.3 版本提供了一键安装的方法。 它不会覆盖 Apple 安装的 PHP ,而是将所有内容安装在单独的文件夹 (/usr/local/php5)。

从源代码编译

另一种选项可以让你控制安装的 PHP 版本是 自己编译。这种情况下,请确保已安装 Xcode 或苹果的替代品 “XCode命令行工具” 可从 Apple 的 Mac 开发者中心下载。

“多合一”安装套件

以上的方法都只是安装了 PHP,并没有安装 Apache 服务器, Nginx服务器或者一个 SQL 数据库服务器。“多合一”的解决方案有比如 MAMPXAMPP,会一起安装这些软件,或还包含一些其他软件, 他们提供了一种权衡于灵活性和易于安装配置的方式。

Windows 安装

你可以从 windows.php.net/download 下载 Window 下可以使用的程序包。 提取 PHP 文件后, 推荐设置环境变量,即你放置 PHP 文件的目录 PATH (php.exe 所在目录),然后你就可以在任何地方运行 PHP。

对于学习和本地开发,您可以使用 PHP 5.4+ 内置的服务器,免配置。 如果你使用包含服务器及数据库的了 “多合一”安装套件,如 Web Platform Installer, XAMPP, EasyPHP, OpenServer and WAMP ,你可以快速启动和运行 Windows 开发环境。但同时要注意下,这些工具与生产环境略有不同,因此如果你在 Windows 上工作并部署到 Linux,请注意环境差异。

如果您需要在 Windows 上运行您的生产系统,那么 IIS7 将为您提供最稳定和最佳的性能。你可以用 phpmanager (一个 IIS7 的 GUI 插件) 来管理和配置 PHP 。 IIS7 内置 FastCGI 并准备就绪,您只需要将 PHP 配置为处理程序。对于支持和额外资源,请参考 PHP在 iis.net上的专区

通常,在开发和生产的不同环境中运行你的应用程序,可能会导致在项目上线时出现奇怪的 Bug 。如果你在 Windows 上开发,但要部署到 Linux(或其他非 Windows),那么你应该考虑使用虚拟机

Chris Tankersley 写过一篇非常有用的博客文章,介绍了他 在 Windows 上开发 PHP 所使用的工具。

通用目录结构

那些刚开始为 Web 编写程序的人中的一个常见问题是:“我应该把程序文件都放哪儿?”多年来,这个答案一直是 “ DocumentRoot 程序所在的根目录” 。虽然这个答案并不完整,但它是一个很好的起点。

出于安全原因,网站用户不应访问到配置文件;因此,公共脚本保存在公共目录中,私有配置和数据要保存在此目录的外面。

对于每个团队、 内容管理系统或框架,他们每一个都会有自己的标准目录结构。然而,如果一个人单独开始一个项目,定义文件系统结构,可能会令人生畏。

Paul M. Jones 对 PHP 领域数以万计的 github 项目做了一些出色的研究。基于这项研究,他编辑了一个文件和目录结构的标准,即 标准PHP包框架。在这个目录结构中,DocumentRoot 应该指向 public/,单元测试应该在 tests/ 目录,还有 composer 安装的第三方库,放到vendor/ 目录。其他文件和目录, 遵守 标准PHP包框架 ,对于参与项目的贡献者,也会比较有意义。

本文章首发在 LearnKu.com 网站上。

本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

原文地址:https://learnku.com/docs/php-the-right-w...

译文地址:https://learnku.com/docs/php-the-right-w...

上一篇 下一篇
贡献者:5
讨论数量: 1
发起讨论 只看当前版本


PorkGuy
macOS下有一个新的APP叫ServBay的,感觉可以替代MAMP了
2 个点赞 | 7 个回复 | 分享 | 课程版本 PHP8.0