What is it?
If Microsoft goes ahead with its acquisition of Yahoo, it will
be taking on a company whose web applications were written in the
open source server-side scripting language PHP, a major competitor
to Microsoft's own ASP. Back in 2002, when Yahoo made its choice of
language, it explained that the major criterion was the cost of
Microsoft's languages and operating systems. (See
Making the case for PHP at Yahoo.)
At the time, Microsoft was making strenuous attempts to migrate
web developers from PHP to ASP, but since then has made steady
progress in accommodating PHP, working in partnership with PHP
company Zend Technologies.
Zend has also partnered with IBM to put PHP on its platforms,
and Sun has added PHP support to the most recent release of
NetBeans.
All this may explain why PHP has been climbing the league tables
as fast as its older sibling, Perl, has been sliding down them.
According to the
Tiobe community programming index, PHP is holding fifth place,
just behind Visual Basic, and with double the users of eighth place
C#.
PHP has the advantage of a community-supported open source
language, in that you can learn it for nothing. But thanks to
commercial support from Zend, conservative user organisations also
trust it. And it can be added to skills portfolios from any
background, from Windows and Linux to "C" and Unix.
Where did it originate?
PHP was created in the mid-1990s by Rasmus Lerdorf, who wanted
to maintain his Personal Home Page but was not quite happy with
Perl. PHP's fortunes were transformed in 1997 when it was taken
over by the Israeli founders of Zend, who rewrote it and changed
its name to PHP Hypertext Processor. PHP borrows from C, Java and
Perl.
What's it for?
PHP was designed to create dynamic web pages quickly. They are
written and edited much like HTML, and run on the web server to
generate HTML pages. Output can also be XHTML and XML, and
proprietary formats such as PDF and Flash.
PHP can also be used for command line scripting, and even for
GUI-based desktop applications - though this is unlikely to be done
by anyone not already committed to PHP.
Originally for procedural programming, PHP was subsequently
given object-oriented capabilities, and both paradigms can be used.
PHP has stayed faithful to its roots in C, and developers can use C
to write extensions to the language.
What makes it special?
PHP has a simpler syntax than Perl - though Perl champions would
argue that this comes at the expense of some of Perl's power and
flexibility.
How difficult is it to master?
You can begin using PHP in a matter of hours, especially from a
background in C, Java, Perl or Javascript, and work up to using its
more advanced features. Perl is supported by IDEs such as Eclipse,
Komodo and Delphi - see
Wikipedia for a
full list.
What systems does it run on?
Most web servers offer PHP support.
What's coming up?
Object-orientation will be improved in PHP 6.
Rates of pay
£25,000 to £45,000 depending on other skills offered.
Particularly strong as part of the Lamp (Linux, Apache, MySQL)
development stack.
Training
See PHP online or the
Zend Developer
Zone for free tutorials and other resources.
IBM's
developerworks and O'Reilly's
onlamp both have useful material, including lists of books.
Zend offers paid-for training, and manages
certification.