As in all things, there is cost benefit analysis. Phones have reached the point that they are now effectively a 3 year device (while early smart phones were 1.5 year devices). The things holding back longevity are screens that get damaged and non replaceable batteries. Otherwise, the specs on a 3 year old phone are very good. The other thing holding back older phones is discontinued OS support. On the other hand, the battery and screen in my 2 year old Galaxy S6 are both doing great and the OS is still being updated. A couple of minor scratches on the screen and the battery holds a charge for a full day. I've had to switch to wireless charging because the USB connector on the phone doesn't hold the cable in anymore. What do I use the phone for? Email, web, calendar, and sometimes maps. I'm boring.
Comparison: desktop computers. 15 years ago, a new desktop computer was functionally obsolete after 2 years. Technology matured and hit a plateau such that my current home desktop is 8 years old and performs most tasks very well. Really, the biggest thing that drags it down are badly designed websites, and that's hardly my hardware's fault. I'm looking at updating it in the near future. While I would have only spent $500 max on a build a decade ago, in this case, I'm going to follow the Woz paradigm and use first class component for everything because I expect to be using the same computer for the next decade at least, barring any unexpected new advances in technology. My budget is about $1200, which will make it the most expensive computer I've ever bought.
In conclusion, if I were buying a phone today, I'd still buy something that was towards the higher end. I've had bad phones before, and they're miserable. On a 3 year time frame, buying a good phone is worth it. I'm not an Apple person, so I wouldn't get an iPhone. On the other hand, I'm not poor, so I have the extra $200 to spend on a phone that doesn't suck.