PHP is a powerful server-side scripting language for creating dynamic and interactive websites.
PHP is the widely-used, free, and efficient alternative to competitors such as Microsoft's ASP. PHP is perfectly suited for Web development and can be embedded directly into the HTML code.
The PHP syntax is very similar to Perl and C. PHP is often used together with Apache (web server) on various operating systems. It also supports ISAPI and can be used with Microsoft's IIS on Windows.

Sunday, December 28, 2008

What's New in PHP v5.3

IBM delves into what's new in PHP 5.3: Part-1 shows you the changes to the object-orientated capabilities, and Part-2 shows you the exciting new possibilities with real closures and lambda functions. ["Read more" for Kroc's personal commentary]

PHP is a language I dislike, but am good at. It is a language that, as long as you stay away from certain parts of it, you'll be safe and it works well. It can even be beautiful in some rare instances.

The very hackish nature of PHP does allow for rapid development, but it's eclectic design makes it a minefield for anybody who isn't personally motivated and regimented about clean, safe and sensible coding.

The new improvements in 5.3 only continue the junk-shop eccentricity of the language. Great when you know you want these things and how to use them, a pain if it's all new to you.

PHP can claim to be "Object Orientated" until the cows come home, but the fact of the matter is PHP's native objects and commands are still painfully procedural, trapped in a stasis field of backwards-compatibility.

Whilst a new high-speed fixed array is nice, the project is trying to solve it's problems by bundling a library rather than entering this stuff into the core syntax. I honestly don't want to use a bolted-on library and to have to instantiate classes for something I would much rather be able to do properly inline with the native syntax array (...). Having to use a library makes for syntaxically unpretty and elongated code, the spawning of more and more one-shot classes and variables until your code starts looking like VB6 meta-programming.