PHP vs. VB6

This is funny. I can’t tell you how funny this is. They’re actually comparing PHP to VB6. Basically, VB6 sucks as a language and for that reason should be reduced to scripting where as PHP is somewhat similar because it makes an excellent scripting language.

Karl over at writes:

PHP is NOT Object Oriented
As a language, PHP’s object-support is quite rich. Since the introduction of PHP5, developers have had the same level of OO support as most other languages. Of course, there’s nothing forcing developers to use OO principals.

The only support for layering offered by PHP is the include/require functions. Like OO, proper layering can greatly increase code readability and maintainability. Much like in classic ASP, most developers tightly intertwine their PHP and HTML.

Exception Handling
Exception handling in PHP is like object oriented programming – it’s supported but not used. The PHP framework scarcely makes use of structured exception handling as do most of the online samples. The example which always gets under my skin is the MySQL library.

Other Issues
The fact that PHP is a loosely typed language can lead to significant difficulties for larger projects. Strongly-typed languages like C#, VB.NET and Java can take full advantages of compile-time checking and design-time tools (IDEs) while loosely-typed ones generally can’t.


  1. I agree. PHP and VB6 need not be compared. VB6 is a RAD; PHP is an interpreted scripting language designed for website development. They were intended for two different purposes.

    Writing a web application in VB6 is difficult. Writing a desktop application in PHP is rediculous. Both serve valuable purposes.

    As far as an application development language, VB6 is, in my opinion, unequalled – even by the dot net languages. It can produce clean user interfaces that actually run faster than its dot net counterparts. It compiles to native code. It is simple to learn and the “R” in RAD is rapid. It beats anything else I have ever used. There is very little that can’t be done in VB6, including standard dll’s (yes, just like C++ – you just have to know how to do it.) It supports most OOP except for inheritance and reflection. (You can force both of these as well.)

    PHP deals with the internet intuitively. It is easy to learn and does offer most OOP. It produces concise code and is well-adapted to thin or thick client applications.

    Dot net languages have become very complex. There are more things to “break” than ever before. They are slower. (I don’t care what the theory says. In actual practice, applications written in dot net are more lethargic than their compiled counterparts.) They also produce some serious code bloat. That being said, they can produce some very elegant, readable code. They become easier to maintain if well-written and handle documents intuitively.

    C++ is a great language for lower-level functions and some applications. It is generally more expensive to develop an application in C++ than in VB6 and it’s a bit harder to maintain. Still, it has some great features and it stays very close to the machine.

    Nothing beats assembly for tight, fast code. No serious developer writes an application in assembly anymore because of the sheer cost to develop and maintain the code. But certain routines are best written in assembly to keep them fast.

    I am becoming more disillusioned with the progress of computer languages. The greater hardware capacity is comparable to the LA Freeway; add more capacity and it will just fill up with junk. Sometimes my current computer runs as slowly as my first computer. Sad. At this rate, we’ll soon need dual teraflop processors, 20 terabytes of RAM, a couple of 600 terabyte floppies, a widget arm, maniform, bacon stretcher, and an extra 5 hours in a day.