My personal experience: PHP = a good, powerful scripting language like Perl, without the crappy, insane, inconsistent syntax of Perl. Awesome productivity. Intended for web applications and serious/longer console scripts. Not intended for Doom 4, that's what C is for and it'll always be like this.
And for what it's good, it PWNS Java. By the time PHP_guy finishes his web portal and is now browsing 4chan in his spare time, Java_guy is still defining class BoardUserCalendarDataStreamStringLayerBufferedInputHandler and wrote 10000 lines of unproductive OO trash. Sure, it's reusable code. You can "easily" transform your image board into CD burning software, a screensaver, or a soccer simulator, beacuse it's all OO. Maintenance is a snap, you only have to navigate through 800 classes and interfaces to find the piece of code you want. That's "information hiding", after all! And it's conceptually right. For example, y=f(x) is clearly not a function, but a method of an abstract mathematical object. And so on.
So this is what I do:
- Quick hacks: Perl.
- Web and fine scripts: PHP.
- System applications and serious non-web stuff: C.