Click here to Skip to main content
15,867,453 members
Articles / Web Development / ASP.NET

PHP and ASP.NET - A Feature List

Rate me:
Please Sign up or sign in to vote.
4.74/5 (57 votes)
25 Aug 2010CPOL5 min read 183.4K   52   39
This is just a helper article which may help you to decide which technology you might want to go with.

Introduction

I do not want to call this as a comparison but a list of equivalent features. You can find a lot of links if you search on the internet regarding 'which is good and which is bad'. Here, I would like to give the same weightage to both technologies as both have its advantages and disadvantages.

Background

Well, I made this list when I was thinking about the right technology for one of my latest requirements. I wanted to make something for a presentation as a part of my Architecture Design job.

Here Goes the List...

The choice of technology is completely dependent on the requirements. The factors that influence the decision of choice are based on the following:

  • Complexity of Business logic
  • Density of contents
  • Expected number of Hits (if it is a website)
  • Budget
  • Size of project, etc.

There are multiple options available for many features. The major ones are listed which are my recommendations.

ASP.NET PHP Comments
Latest Stable Version 4.0 5.3.3 As of 19 Aug 2010
License MS EULA PHP License v3.01
Price
  • ASP.NET - .NET Framework is free. So ASP.NET also free
  • Web Server – IIS – Not Free. OS cost applicable
  • OS – Windows Server – Not Free
  • PHP – Free
  • Web Server – Free
  • OS – Linux is free, Windows is costly
PHP can be installed on any OS and Web server. But ASP.NET is recommended for IIS only (even though ports to few web servers available)
Third Party Hosting Price Cost involved Cost Involved Both are not costly but if you compare, PHP is found to be a little bit cheaper
Development Cost Developer cost Involved Visual Studio Express Editions are free Rapid-Application-Development Model. So development takes less time Developer Cost Involved Free/Open Source IDEs available Much coding involved Both are same but ASP.NET is more on Rapid-Application-Development and PHP is more on Coding
Cross Platform Yes Yes Whatever server side language you use, browsers render only as HTML. But development is not cross-platform even though ASP.NET got ports for Linux available
Code Portability  Partial Yes For PHP, a code written on Linux/Apache will work on Windows or any OS/Web Server. But .NET, even though we have ports available, you will require some tweaks to make it run.
Cloud Feasibility Possible Possible Additionally, for ASP.NET -SQL Azure is also available for database hosting.
Mode of source Closed Source Open Source Application developers have no benefits for either it is closed or open UPDATE: Microsoft also opened .NET framework code for reference. Note that it is just for reference. You cannot do anything except reading. A real open source must be able to download, make amendments, re-compile. You cannot make your own .NET versions.
Promoted by Microsoft PHP Community
Customer Support by Owner Yes No
Security Fixes Auto Update – part of OS Need to update separately when available Both parties release fixes for bugs and security issues instantly
Developer Help Community Community Both technologies got fans worldwide. They will provide help and guidance through forums, mail lists, news groups, etc.
Languages
  • C#
  • VB.NET
  • Jscript, etc.
PHP
Database Any Database Good fit: Microsoft SQL Server Any Database Good fit: MySQL Supports most of the databases
Frameworks / OOPs There is an inbuilt framework (called web forms framework) available which will force developers to use OOPs You can write both procedural and OOPs based code
MVC Microsoft ASP.NET MVC Symfony
Development IDE
  • Recommended: Microsoft Visual Studio
  • Any IDE
  • Recommended: Zend Studio
  • Any IDE
Even Notepad can be used for coding. PHP is more easy for that, but if you can afford Visual Studio, then ASP.NET.
ORM
  • ADO.NET Entity Framework
  • NHibernate
Doctrine
Templating NVelocity Smarty
Extensibility
  • ASP.NET uses Microsoft.NET framework. So you can make use of any functionality available on .NET framework
  • HTTPHandlers
  • HTTPModules
  • ISASP Extensions, etc.
PECL – PHP Extension Community Library
Easy to learn Yes Yes Personally I found PHP to be easier for a beginner to learn programming
Recommended for Huge systems? Yes No As per my analysis, PHP is recommended for small-to-medium projects and ASP.NET and JSP for medium-to-big applications UPDATE: If you think about Facebook, please understand that:
  1. it uses a re-written PHP and a
  2. transformer+compiler called HipHop which transforms PHP code to highly optimized C++ code and then compiles with gcc. We are talking here about the PHP we get for application developers from PHP.NET (as it is).
Content Management Systems
  • DotNetNuke
  • SharePoint
  • N2CMS …
  • Typo3
  • Joomla
  • Magento …
Wide variety of options
Advancement Growing very fast Growing with limited speed Micorosft’s team is keen to develop and integrate new features. But since PHP is promoted by community, it takes time to reach that level
Backward Compatibility Old code will work on new framework versions without change Old code might need tweaks to make it work on latest versions
Security IIS must be improved from the past and now a days it is one of the secure web servers Major web servers are secure ASP.NET, PHP, Oss and its servers are mostly secure. Now developers need to make sure their coding is secure.
Performance Faster Faster for small programs and slower for medium-to-big programs Very basic old argument – ASP.NET is compiled and PHP is interpreted (line by line compilation and execution)
Deployment Multiple methods available E.g.: Publish, XCopy, MSI You need to copy/paste code to server somehow (e.g.: FTP)
Some useful features
  • WCF (Windows Communication Foundation), Web Service, .NET Remoting etc.
  • ASP.NET AJAX
  • Built-in Caching features
  • Web Service
  • Third party Ajax libraries
  • Third party Caching libraries

I do not claim all I stated above are true, but all that I believe to be true. Also this list is in no way complete. It is time consuming to build a full list, so I included the major points only.

Correct me if any point is wrong or if I missed any important points.

History

  • 19th August 2010: Initial version

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Architect ORION INDIA SYSTEMS
India India
Praveen.V.Nair - aka NinethSense - PMP, Microsoft MVP - is working as a Head of Technology and Architecture at Orion India Systems, Kochi, India. He has been playing with electronics from the age of 10 and with computers from the age of 14. He usually blogs at http://blog.ninethsense.com/.

Comments and Discussions

 
GeneralNice Pin
vuong121114-Sep-15 17:42
vuong121114-Sep-15 17:42 
QuestionUseful! Pin
Sander Rossel6-May-14 8:32
professionalSander Rossel6-May-14 8:32 
Questionnice... Pin
surya_ece929-Oct-13 1:00
surya_ece929-Oct-13 1:00 
GeneralMy vote of 5 Pin
Mahesh Gholap30-Jul-13 7:50
Mahesh Gholap30-Jul-13 7:50 
GeneralMy vote of 5 Pin
xalid7730-Jun-13 2:11
xalid7730-Jun-13 2:11 
QuestionMy vote of 5 Pin
subinsbn10-Jun-13 19:29
subinsbn10-Jun-13 19:29 
GeneralMy vote of 5 Pin
neoraltech7-Mar-13 20:56
neoraltech7-Mar-13 20:56 
GeneralMy vote of 5 Pin
Prasanth S16-Jan-13 23:02
Prasanth S16-Jan-13 23:02 
GeneralMy vote of 5 Pin
Cory Shirts6-Oct-12 9:47
Cory Shirts6-Oct-12 9:47 
GeneralMy vote of 5 Pin
نسيت انساك25-Sep-12 15:24
نسيت انساك25-Sep-12 15:24 
GeneralMy vote of 5 Pin
Florian Rappl21-Feb-12 2:20
professionalFlorian Rappl21-Feb-12 2:20 
GeneralMy vote of 5 Pin
Ed Nutting30-Sep-11 10:53
Ed Nutting30-Sep-11 10:53 
QuestionCorrect me if I'm wrong? Pin
dmartini-iam1-Sep-10 4:36
dmartini-iam1-Sep-10 4:36 
AnswerRe: Correct me if I'm wrong? Pin
Praveen Nair (NinethSense)1-Sep-10 7:03
Praveen Nair (NinethSense)1-Sep-10 7:03 
AnswerRe: Correct me if I'm wrong? Pin
Patrick Harris9-Oct-12 14:41
Patrick Harris9-Oct-12 14:41 
GeneralPHP and large projects. Pin
jlafay24-Aug-10 3:12
jlafay24-Aug-10 3:12 
You state that PHP is only good for small to medium sites, how did you come to that idea. I was wondering if you had particular reasons why you think it's not as scalable. Especially considering that sites such as Facebook run on PHP. I do understand that Facebook uses its own PHP engine that interprets the code into something like C++ and then compiled, but they did run on straight PHP for awhile.

Thank you for the very informative article, I enjoyed it.

-jeff
GeneralRe: PHP and large projects. Pin
Praveen Nair (NinethSense)25-Aug-10 6:17
Praveen Nair (NinethSense)25-Aug-10 6:17 
Question[My vote of 2] A scripted language compared to a compiled? Pin
Oakman23-Aug-10 9:32
Oakman23-Aug-10 9:32 
AnswerRe: [My vote of 2] A scripted language compared to a compiled? Pin
Praveen Nair (NinethSense)23-Aug-10 10:07
Praveen Nair (NinethSense)23-Aug-10 10:07 
GeneralRe: [My vote of 2] A scripted language compared to a compiled? Pin
Oakman23-Aug-10 10:50
Oakman23-Aug-10 10:50 
GeneralRe: [My vote of 2] A scripted language compared to a compiled? Pin
Praveen Nair (NinethSense)26-Aug-10 19:42
Praveen Nair (NinethSense)26-Aug-10 19:42 
GeneralNice summary Pin
alex_oz22-Aug-10 12:17
alex_oz22-Aug-10 12:17 
GeneralRe: Nice summary Pin
Praveen Nair (NinethSense)23-Aug-10 7:47
Praveen Nair (NinethSense)23-Aug-10 7:47 
GeneralMy vote of 3 Pin
Yasser Azeem20-Aug-10 5:05
Yasser Azeem20-Aug-10 5:05 
GeneralMy vote of 4 Pin
Pranay Rana19-Aug-10 20:29
professionalPranay Rana19-Aug-10 20:29 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.