For PHP development? No. However it can be useful to have the development machine match the expected deployment machine so you can spot bugs earlier.<p>Windows and UNIX-like systems in particular handle files very differently and understanding the edge cases (e.g. what can filenames contain character wise?) can be important.<p>I'd say that Linux is by far the most popular PHP host, however Windows desktop might be the most popular development platform.
In what sense? Matching dev to prod? If so, I think the question ought to be: what justification is there for not matching prod?<p>I know some devs like their Windows desktops. That's fine. But it's 2014 and we have nice things like virtualisation, vagrant, containers, puppet and ansible.
Hardly, however there are a few routines that only function properly on Linux, such as syslog(), one or two of the date formatting libs. The cause: these routines depend on system libraries for functionality which don't exist on Windows.
I would recommend OS X for PHP.<p>Things just work better on a mac for development. This is true for Rails and PHP development. Things just never seem to work as easily on windows.<p>I would also recommend checking out Laravel and using Laravel Homestead (Vagrant) for development also check Laravel Forge for deployment.<p><a href="https://laracasts.com/lessons/introducing-laravel-homestead" rel="nofollow">https://laracasts.com/lessons/introducing-laravel-homestead</a><p>Laracasts is a great place to learn the Laravel Framework. Jeremy uses a mac so using OS X makes the tutorials easier.