I do not have a PhD. My experience is based on personal experience with hiring people, speaking to friends and other hiring managers, and anecdotes from HN.
In general, the reasons are (for better or worse):
1. PhDs aren't very good programmers or don't follow software engineering best practices.
2. PhDs want to do "research" and will get bored with the basic software production required for 90% of industry jobs.
3. PhDs expect to be paid/respected at a higher level of seniority, even though skill-wise they'e often barely above a recent BA graduate.
I don't know how valid all of these are, but in general I would personally always choose someone with 5 years of industry work experience over someone with a PhD for a software job.