When comparing PHP vs Udacity, the Slant community recommends Udacity for most people. In the question“What are the best resources to learn full stack web development? ” Udacity is ranked 2nd while PHP is ranked 7th.
Ranked in these QuestionsQuestion Ranking
Pro One of the most common languages
According to the 2015 Stack Overflow Developer Survey (26,086 people surveyed), PHP was the 5th most popular/used language at 29.7%.
Pro Lots of tutorials online
Pro Used by most common CMS platforms
Many clients are looking for an easy-to-update web site that's flexible and free. Drupal and Wordpress fill those needs very well.
Pro Most prominent language for web applications
Part of the de facto standard web application stack.
Pro Great third-party package manager
PHP standard library is somewhat subpar, but if you need plugins, language features, composer has them all( you can even puzzle together a custom framework from composer).
Since 7.x was released, PHP has become a pretty fast language.
Pro Lots of PHP frameworks available which help with development
PHP people love frameworks, and with frameworks such as Laravel, you can build a web app or API really fast (Facades, ORMs, scaffolding etc.)
Pro Great documentation
Pro Courses taught by industry professionals
Pro All courses are self-paced
Courses are always made available which means there is no waiting for the specific course you want to run. You can work through the courses as fast or as slow as you want.
Pro Offers Nanodegrees
Udacity offers a few different Nanodegrees which provide access to various different courses, project reviews and coaching support for $200/month.
Current options include Front End Web Developer, Data Analyst and Android Developer. See the full list here.
Pro Courses are easy to understand
Pro Actual feedback on coding projects
You get actual feedback from developers on your code, which is useful. Yes having your sites/apps do what it is supposed to do is important, but you need feedback to learn industry standards/best practices and other gotchas that are much harder to learn on your own.
Con Poorly designed language
Despite its widespread use, PHP is generally looked upon poorly from a design point of view. The consistency of function names and function argument order, lazily and borderline non-functional implementation of object oriented programming, can only receive requests via POST methods, slow version adoption (the PHP you learn right now may not work on every webserver you'll work on), and a focus on "hacking things together" rather than "doing it right". These are all very common complaints when it comes to working with PHP. While not a bad language to learn, PHP is not at all a good language to learn first, as it will probably teach bad habits.
Con Immense catalog of insecure frameworks
The most serious security problems in websites on the web today are almost universally found in popular PHP frameworks, CMS platforms, libraries and code samples, almost all stemming from poor language design, bad tutorials and awful resources.
Con Most tutorials are out of date
A lot of very bad tutorials are still widely circulated among beginners, and these tutorials teach very poor programming practices.
Con Most resources are poorly-written
Few resources exemplify the "correct" or secure use of features.
Con Interpreter being too permissive
If you forget the dollar sign, the variable name will be converted to a string.
Con Nanodegrees are expensive
Udacity is quite expensive at $200/month if you want to do a nanodegree.