我打算自学PHP。我想知道是否应该使用 LAMP 或 Microsoft 堆栈。我可以访问两者。我想知道哪个最终最容易学习,但最相关。
16 回答
XAMPP将使您在 Linux 或 Windows 上快速启动并运行。
如果您对 Windows 以外的任何操作系统感到满意,那么从长远来看,您会更高兴在上面学习 PHP。多亏了XAMPP,Windows 上的 PHP 现在很容易安装,但它仍然逊色。
各种事情的工作方式与您略有不同,除了(通过 PHP 没有错)和扩展的数量更少,并且在没有 PECL的情况下更难安装。
此外,被低估的交互式解释器 ( php -a
) 不能在 Windows 上运行。但是,如果您也愿意在 Windows 上安装 Python,那么phpsa可能是您可以接受的替代方案。
Zend(PHP 背后的主要公司)提供 Zend Server 社区版。它是一个免费的安装程序,可以设置整个 PHP 堆栈,并提供 Web 管理界面。它针对可靠性和性能进行了优化(即使在 Windows 上)。实际上,这还不算坏。有适用于 linux、windows 和 mac 的安装程序。
http://www.zend.com/en/products/server-ce/index
另外,它捆绑了 zend 框架,这是一个非常好的框架选择。
部署在任何一个上都不错。商业版中非常强大的故障排除工具。虽然很贵。
如果您专注于学习 PHP 语言本身,那么整体架构并不重要。但是,PHP 经常用于 LAMP 或其他涉及 Linux 的堆栈中。
PHP 主页是学习 PHP 的最佳资源。
Stackoverflow也是针对特定 PHP 编程问题的另一个资源。:)
调试可能很棘手,我的最佳建议是尽可能多地镜像生产服务器环境(数据库内容、设置、文件系统)
我几乎是在生产级网络服务器上开发的,日志记录略高,哦,是的,在 Linux 中比在 Windows 中要好得多。
您还可以在您的简历中添加使用 php 的 Linux 经验 =)
玩得开心。
如果您打算在 Windows 环境中学习 PHP,我强烈推荐WampServer,它是我用于全职开发环境的工具,并且非常容易设置(只需安装一个 .exe)和配置。它包括 Apache、MySQL 和 PHP。
您可以在 LAMP 堆栈中互换很多组件,因为您想专注于编码,我会选择您更熟悉的环境。但我想说,就易于编码而言,最重要的关系是 mysql 和 php。
LAMP 本质上更灵活(根据我的经验,对它的支持更多)并且可能会让你更快地开始。然而,就开发速度而言,它并没有那么大的意义,因为 PHP 无论如何都是语言。除非您必须执行某种特定于操作系统的操作,否则唯一的区别是设置服务器所需的几个小时/几天。
如果您在 Windows 上工作,XAMPP 是比 WAMP 更好的选择。
在 Ubuntu 中安装:
sudo apt-get install mysql-server apache2 php5 php5-gd php5-mcrypt php5-mysql libapache2-mod-php5 mysql-query-browser mysql-admin
我还建议高度使用 svn 或 git 来跟踪您的代码,这可能太快了,但我个人无法想象没有它我是如何度过的。
如果你想学习 PHP,我会说使用任何你觉得舒服的操作系统/堆栈。
当您更好地了解 PHP 时,是时候扩大您的视野了,看看其他操作系统(Windows/Linux/Mac)、数据库引擎(MySQL/SQLite、PostgreSQL...)、Web 服务器(Apache /IIS/Lighttp, nginx, ...), ...
当然,平台之间存在一些差异(其中之一,Windows 和 Linux 之间的文件名区分大小写;当您一生都在 Windows 上工作并且突然不得不将应用程序部署在Linux 服务器 ^^ ) ; 但是没有那么多,在至少了解 PHP 的一些基础知识之前,您可能不应该专注于那些。
首先,像 WAMP 这样的东西应该没问题;一段时间后,也许你会切换到 Linux ;你可能会自己编译 Apache+PHP+MySQL(顺便说一句有趣的经历);你会学到更多;但不要急于求成:-)
如果你走微软堆栈的路线,我总是喜欢 WAMP 服务器:http ://www.wampserver.com/en/
如果您只是想学习 PHP,那么您学习哪一个并不重要。存在差异,但它们是边缘情况。我更喜欢在 Windows 机器上开发,所以我使用WampServer,这使得它非常容易。
如果您的目的是学习/开发 PHP,那么您是否使用 MS 堆栈是无关紧要的。如果您想使用 MS Windows 而不是 linux,只需将 LAMP 替换为WAMP——它们都服务于相同的“Apache、MySQL、PHP”堆栈——只是在不同的操作系统下。
由于您是 Windows 人,我会说使用 WAMP 。
您询问相关性,因此,我认为您应该使用基于 Linux 的堆栈。并不是因为 Microsoft 本身不相关,而是因为 Linux 更有可能成为您部署所编写的任何 PHP 应用程序的环境。您可以使用任一堆栈很好地学习 PHP,但是在部署应用程序时,熟悉 Linux 堆栈可以使该过程更加顺利。
当然,如果您提前知道您可能会使用使用 Microsoft PHP 堆栈的托管服务,那么这对您来说是一个更好的选择,但我猜这不太可能。去Linux。