PHP5 is an excellent object-oriented programming environment, much more advanced than PHP4 which ships with OSX Server but there can be some gotchas when upgrading the built-in PHP that comes with OSX Server.
You can upgrade to PHP 5.x using Marc Liyanage's binaries. But you may find that some of the directions don't quite cover it. Many instructions you find on the process say "simply uncheck the php module in the web services of Server Admin." The problem is that Server Admin automatically re-checks the box for you.
You'll have to go in and use brute force in Terminal to disable Apple's built-in PHP module.
MacOSX Server 10.4 and earlier:
MacOSX Server 10.5:
cd /etc/apache2sudo cp httpd.conf httpd.conf.oldsudo pico httpd.conf
Then find the lines that mention php:
"LoadModule php4_module libexec/httpd/libphp4.so" or
"LoadModule php5_module libexec/apache2/libphp5.so"
Delete these lines and save httpd.conf. Restart the Web service via Server Admin.
If you use PHP5, you may have a problem with SquirrelMail.
You can upgrade SM following these instructions.