Is charging my iPhone all night harmful?
Technical
Lithium Polymer batteries, such as those used in the iPhone, are a very well understood battery chemistry and use specific chargers to manage their charging.
While the latest charging ICs Apple uses are proprietary (they work with Dialog for their power management ICs), it is unlikely that Apple performs a significantly different charging process than every other battery charging IC manufacturer.
This process charges the battery as quickly as reasonable while protecting the battery from damage or increased wear and tear. Please note that the charging IC - or Power Management IC - is located inside the iPhone.  So this applies regardless of the external USB powering device you use to charge it.
When the battery is full, the charger turns off the charging process.  The battery is left alone without current going into or out of it.  This is because most Lithium chemistry batteries don't like trickle charging (a process you may hear from others where a constant voltage and low current is applied to a battery all the time to keep it topped off).
Charging ICs therefore turn the current completely off and power the phone itself from the charger. This is the only time the battery isn't charging or discharging - when it's full and the phone is plugged in.
The battery isn't discharged and charged in some sort of cycle after charging is complete.  I'm not sure where this myth stems from, because it would actually place additional wear and tear on the battery.
Self Discharge
Every battery has a &quot;self-discharge&quot; rate.  This is the battery's natural capacity loss when not connected to anything.  For Lithium Polymer batteries, this is a low (compared to other rechargeable battery types) 5% per month.
The charging IC does check up on the battery and if it loses significant charge over time while plugged in, it will start another charging cycle.  But this would occur perhaps once every two weeks after several percent of the battery charge has been lost - certainly not overnight.  If you leave your phone plugged in for a month, it might start another charging cycle once or twice in that time.
Conclusion
The phone and its battery, therefore, will suffer absolutely no damage being plugged in for days at a time.
Long term storage
There is one caveat to this answer: Lithium chemistry batteries don't like to be stored with full charges.  They degrade more quickly if they aren't used and have a full charge.  If you are going to store your mobile device unused for more than a month, charge it up fully, then discharge it (watch videos over wifi or play video games) until it's 40-50% charged.  Then turn the device fully off.
Long term use
If you are using an older iPhone in a fixed installation (picture frame on the wall, data collection, baby monitor, etc) while turned on and in use with it plugged into a charger all the time, you should consider disconnecting the charger and discharging it fully once a month.  Similar issue to the above - the battery doesn't like being &quot;stored&quot; for long periods of time at full charge, and the charger will keep it near 100% the entire time - degrading the battery a bit more quickly than desired. Going through a discharge cycle will exercise it and help it to last longer.
Personal
While I use a newer phone now, I charged my iPhone 3GS every day for 8+ hours a day (ie, overnight) regardless of how much charge was left - and more often than not, I had used less than 20% on a given day. I used it for 4 years that way, and never replaced the battery -  it still lasted much longer than a day. Since then (3 years now), it's been essentially an iPod touch, being charged for days at a time when no one is using it, and being left in the car discharged for days (or weeks!) at a time when it's forgotten.  Battery is still going strong, and this is certainly more than 900 charging cycles for this device.
My iPhone 5 and iPad (3rd gen) were used the same way.  No negative impact from having them charge all night every night.
I'm now using the iPhone 6+ the same way.  This is an expected use case for a mobile device, and it's running just fine. I expect that to continue to be the case.
You can leave your iPhone plugged in all night and it will not be harmful to your iPhone.