学习PHP的最佳资源是PHP手册。它的编写和结构都非常好,并且是PHP社区最大的资产之一。如果您对ASP.net充满信心,则该手册足以帮助您入门。
在开始阅读之前,您应该设置一个PHP堆栈。您可以自己安装Apache,PHP和您喜欢的数据库(SQLServer很好)(这非常容易),也可以设置现成的堆栈,例如XAMPP。XAMPP将安装:
一口气(加上一些其他东西)。缺少的一个重要库是phpUnit,它显然可以帮助您进行单元测试。
然后,您应该安装一个IDE,显而易见的选择是带有PHP开发工具(PDT)的Eclipse Classic或适用于PHP的Netbeans。还有很多其他的,但是我推荐这两个。我会同时使用它们,如果您不能在它们之间进行选择,Netbeans会更容易掌握,但是您应该真正评估两者,并自己决定哪个更适合您-我没有在Visual Studio中使用过时间长了,我真的不知道您对哪个IDE可能更熟悉。
当您阅读了本手册的基础知识时,应该开始考虑MVC框架。同样,我将推荐两个:
如果您允许我一个愚蠢的隐喻,那么Zend Framework是野兽,而CodeIgniter是美丽。在Zend(PHP背后的公司)的支持下,Zend Framework的学习曲线非常陡峭,您几乎可以使用它进行所有操作。CodeIgniter更容易掌握,为初学者提供了很好的文档,并且相当受欢迎。但是它的大部分代码库都是过时的废话,因为不久前它们曾经支持PHP4。
对于初学者来说,显而易见的选择是CodeIgniter,但不要卡在它上面。将其用作学习工具,并尽快移至Zend Framework。同样,PHP世界中还有更多的MVC框架,但是这两个是我推荐的。
至于书籍,一本很棒的非初学者书籍是PHP Objects,Patterns and Practice。Sitepoint的PHP书籍总是很容易阅读。如果您爱上了PHP,那么您应该真正考虑订阅PHP Architect。
最后,查看有关纯技术原因将PHP作为首选方法的精彩讨论。
更新:其他一些在线资源,主要针对非初学者:
如果出于某种奇怪的原因,您想在IIS而不是Apache上使用PHP,那么Microsoft的Windows上的PHP就是一个很好的起点。IIS上的PHP可以正常工作,并且是一个有效的选择,特别是对于.Net开发人员而言,但您确实应该使用Apache(以及MySQL或PostgreSQL而不是SQLServer)来获得完整的PHP经验,并确保您的技能可以移植到任何其他流行的软件上操作系统。您不想错过mod_rewrite带来的欢乐。
个人说明:对PHP有很多讨厌的地方,其中有些是合理的。如果您决定这样做,那么您必须对在此过程中会遇到的各种PHP资源,脚本,库非常批评,那里的废话太多了,对于初学者来说,不可能知道其中的区别。PHP的广泛流行可以转化为一个非常庞大且有用的社区,使您的技能具有很大的可市场性,成千上万的博客,但也可以转化为数千TB的糟糕代码。