Why PHP?
Most application development work is done in Java. There are some good reasons for this, namely that Java enjoys wide industry acceptance and support, most enterprise development work is done in Java, and enterprise-class companies are the primary users of ESBs today (hence the name).
These days, "Enterprise" is usually taken to mean "large company", but we prefer the definition "a project undertaken or to be undertaken, esp. one that is important or difficult or that requires boldness or energy". (Doesn't all good development require boldness and energy?) An ESB is suitable for all sorts of tasks, even in very small projects, and even in non-commercial development tasks - you don't have to be a developer at a big company for it to be useful.
PHP is a natural fit for ESB work for a number of reasons:
- Much of the development effort involves receiving and parsing messages, frequently in XML, and PHP has sophisticated XML and string parsing functions that can do in one line what some languages require entire functions to perform.
- For a scripting language, PHP is remarkably efficient. Much of its functionality is implemented in C and is thus compiled and optimized natively for the platform the application runs on.
- PHP is a very popular language, and is widely supported and actively developed.
- Most important, it provides simply enormous collections of APIs and interfaces with external services. Integration is nothing without the ability to talk to other applications, and PHP makes it easy to communicate with just about anything, in any way.