Myth need to be solved: will the battery drain faster in places with poor wifi signals? Will an iPhone's battery drain faster in places with a poor wifi signal (or phone signal)? My bedroom is far from the wireless router, usually the signal is very weak and flickering, but I have to discover, that after waking up from sleep my battery lost around 25 % for 7-8 hours, while actually I don't do anything with my phone, but it takes more energy than average when idle. 

Someone can explain this for me, is it true?
This is not a straightforward Yes or No answer. Consider the following points:


Cell reception - Having poor mobile (or cell) reception will drain your battery faster than if you don't. This is because all mobile phones (iPhones included) check regularly to determine signal strength. When there is no signal, your iPhone will keep trying to find and connect to a signal and this will impact your battery. If you are ever anywhere for any period of time where you know you have no cell reception, best to go into Airplane mode (or, if you have Wi-Fi, go into Airplane mode and then just enable Wi-Fi).
Wi-Fi - In the scenario you describe (i.e. your iPhone sits idly while you sleep and is not being actively used), the impact of having a poor Wi-Fi signal will depend on how many background processes you have running that require an internet connection. One example, if Mail is set to fetch data every 15 mins then it will check for new mail 32 times during that 8hr period - this obviously requires a data connection and will use more battery power than if it's set to fetch mail hourly (i.e. 32 time v 8 times). However, unless you have a lot of apps trying to use the internet in the background while you sleep, a loss of 25% battery power is not expected.
Wi-Fi Assist - The other complicating factor (especially in your scenario) is Wi-Fi Assist. Assuming you have iOS 9 or later, your iPhone can use Wi-Fi Assist to automatically switch to your mobile (or cellular) data connection when you have a poor Wi-Fi connection. Wi-Fi Assist is designed so that your iPhone can stay connected online even when you have a poor Wi-Fi connection. You can see then how this complicates your question a little - if you're sleeping for 8hrs and your iPhone has a weak Wi-Fi signal while you have a whole heap of background processes still continuing, and if Wi-Fi Assist is enabled, then your battery will drain faster still.


In summary, how much the battery will drain is affected by the above factors and your individual usage (the Apps you use, what settings you have, the health of your battery, etc).

Do your own Five Day Test

You can conduct a 5 day test to determine the answer to your question for your exact scenario. Your test would go along the following lines:


Day 1 - all on - Fully charge your iPhone and unplug it from charge and leave it as you normally do for 8 hrs while you sleep. Take note of the remaining charge afterwards.
Day 2 - Wi-Fi only - Fully charge your iPhone and unplug it from charge. Put your phone into Airplane mode. Then, enable just your Wi-Fi and leave it for 8 hrs while you sleep. Take note of the remaining charge afterwards.
Day 3 - Cellular only - Fully charge your iPhone and unplug it from charge. Switch only your Wi-Fi off (but don't put your iPhone into Airplane mode). Leave it for 8 hrs while you sleep. Take note of the remaining charge afterwards.
Day 4 - all off - Fully charge your iPhone and unplug it from charge. Put your phone into Airplane mode and leave it that way (i.e. no Wi-Fi or anything - it's totally off). Leave it for 8 hrs while you sleep. Take note of the remaining charge afterwards.
Day 5 - all on with Wi-Fi Assist settings changed - This will almost be a repeat of Day 1. Fully charge your iPhone and unplug it from charge. Go to Settings > Mobile (or maybe Cellular in your case). This is the screen where you'll see Mobile Data etc. Now keep swiping up until you get to the very bottom of the screen. If Wi-Fi Assist is on, turn it off. If Wi-Fi Assist is off, turn it on. Exit Settings and leave your iPhone for 8 hrs while you sleep. Take note of the remaining charge afterwards.


NOTE: You will need to ensure you have the exact same apps running for each night to improve the validity of your results!

After doing the above tests you'll have your answer. You'll know how much your battery drains under various conditions for your own personal circumstances.