So, I inverted that and worked my ass off like I was still an undergrad in the first 18 months, toned it down for the next year and submitted my thesis at 2 years 10 months (the earliest my university would allow a submission) and was viva'd and passed 2 months later with minor corrections.
PhDs taking forever is generally a lack of initial work by the student rather than any external factors. Too many students let their supervisors fob them off rather than getting in their office when needed and forcing their projects forward.
Also, selecting a sensible area with a high likelihood of novelty helps, I worked on energy harvesting for hostile environments (high temp photovoltaics, piezo etc at 300degC) which was a new area for the group and my supervisor, and published 6 papers as basically nobody else was working in the field.
Doing a PhD in the UK helps, in and out before the funding dries up in 3-4 years is expected along with no class requirements and no masters needed (can go in straight from Bachelors).