How do you know how to use PHP but have no idea about domains and hosting? I'm not trying to be insulting I'm just kind of bewildered by it.
A few questions for you.
1. Are you looking for a free site or are you willing to pay for your hosting and domains?
Free sites, unfortunately, are often less versatile. They might not allow PHP or databases or something. So look at their service list to make sure they offer what you need. I like
http://heliohost.org because they basically allow anything you want to do. Unfortunately, they aren't accepting new users at the moment.
2. Have you thought about the domain you want to use? There are a few options. Use a subdomain from your hosting service (for example, if hackthissite was your host and you used their subdomain option your site would be
http://yourdomain.hackthissite.org). Or you could go to a domain registrar (such as namecheap or 1and1) and buy one. If that's the case, you need to determine if you want a .com, .org, .net, .co.uk, etc. It depends on what you want to do. Some domains are cheaper than others and although people don't generally follow the rules there are specific reasons for using each of the types of domain types.
3. Almost any host you run across is going to allow HTML and most of them allow FTP. You shouldn't have an issue there. Figure out what you want to do and give us the site you're interested in using for hosting. Post it here and I'll review it to make sure everything is a-ok for you.