Presumably the OP is referring to server-side Java, i.e. JSP or Java Servlets (or some framework like Struts built upon one, the other or both).
For me one of the biggest issues is PHP's poor support for character encodings. Most of the PHP library assumes that a string is a byte array. mb_string can handle multibyte strings, but you need to know what encoding they're in and the rest of the PHP library still ignores the encoding.
Of course Java and .NET have unicode strings internally, which means that practically all APIs callable from Java or .NET need to be unicode aware (or at least, not totally naive, like most of PHP's)
Hopefully this will be addressed in PHP6.
Mark