This isn't PHP's fault, nor is it Mozilla's. It's Microsoft's.
The Netscape Web browser has always identified itself as Mozilla in the user-agent string.
It's a joke -- most of the Netscape developers originally worked on the Mosaic browser, and after leaving the University of Illinois to become capitalists, they named their new browser Mozilla, as in "Godzilla."
After Microsoft bought rights to the Spyglass Mosaic code and released it as Internet Explorer 1.0, which was a pathetic and crippled mess, many Webmasters began performing browser detection so as not to hand IE anything too complicated (like frames).
When IE 2.0 was released with additional capabilities, Microsoft decided to lie about its identity in the user-agent string, and declare itself to be Mozilla so that users could see "upgraded" Web pages. (Apparently Netscape didn't have any sharp lawyers on its team, and let Microsoft get away with this.)
There are a lot of reasons not to tell lies. One reason is that it's very difficult to stop.
So now we've gone through revision after revision of MSIE, and it still lies, telling your server that it is Mozilla when it's not.