I've just got a new phone and the guy in the shop very helpfully pointed me in the direction of www.saynoto0870.com you put in any non-geographic number (0870, 0845, 0800 and so on) and it will give you a geographic equivalent.
If you use the geographic equivalent on a mobile this means that it will fall under your "free" minutes and not be charged extra. If you use it for an 0870 it means you only get charged BTs rate and not the premium charge.
Really useful little tool. Thought I should share!
EG i can ring the olds in Cyprus for 1.5p per min compared to BT's 22.5p per minute. Same for mobiles too call them for 3p pm !!!
Have the facility for those VOIP or whatever they are called things with the broadband connection, ont have the fancy phone though so havn't tried it yet.
Guessing the planet numbers works similarly - over vacant internet lines or such but its sure cheap