While the contract is for eighteen months, the trick to this is that o2 will let you downgrade your tariff after 9 months, opening up a tidy loophole for those that are organised. As the tables below show (in red), it works out £9 or £10 cheaper overall to take out the £45/month tariff and then switch down to £35 at the 9 month mark. In the meantime, you benefit from 1200 free minutes per month.
Whilst over 9 months you'll spend £90 more on the contract than you would have on the £35 tariff, the phone costs £99/£100 less, so you'll still save £9/ £10 overall, and that's before cashback.
http://www.moneysavingexpert.com/tipnote/cheap-iphone
Use TopCashback or Quidco and you can get £35 cashback, saving more money.