I know in iOS 6 they removed the toggle for every phone, then reinstated it due to popular demand. However, you'd be amazed how many folks don't know that a toggele even exists - even though its much easier to find than on android (I have both types of phone).
I live in an area with a very weak 3g signal (but strong 2g) so I feel its a a waste of battery having 3G enabled when I am at home with wifi.
As I said before, i think the missing toggle is at least partly carrier related.
The carrier bundle contains a file carrier.plist.
The first section of that file contains carrier options and one of those is to disable the 3G toggle. This would have to be enabled to show a 3G toggle.
It may also be the 4G setting that is overriding something. However, I suspect carrier involvement somewhere. The same nano sim in an iphone 5 offers a 3G toggle, whereas in my 5s there is not a 3G toggle. The differences are down to cellular chipset and differences in the underlying OS drivers and carrier settings caused by the hardware differences.
I have contacted my carrier and am awaiting a response. I have also contacted Apple and posted a feature request via their website. Between them something should drop out in the fullness of time.
In the meantime my carrier offer an app that can route calls and text via wifi or cellular, so I can use my phone in airplane mode, with wifi on, and still get calls. Pretty neat and it seems to work when I am at home. Even bigger battery saving!