I do not think it's possible to prevent the browser from displaying the URL of the a link when you hover over it. Really when you think about it, it's a security issue because you could have a link that says "Click to redirect to the home page" but really it links to download_awesome_virus.exe", or loads up a mangled image, or redirects to a malicious page, etc. However, with that said, if this was possible, it would have to be taken care of client-side (in most likely JavaScript), so PHP is not the tool you are looking for.
What you could do is have an <a> tag with an empty href attribute, but then add a click event to it (would probably need to assign it an ID or some kind of identifying class) to inject a predetermined URL into the href attribute and then redirect to said address. Or simply just redirect the user to said address (so you wouldn't even really need an actual <a> tag).
I would advise against this though, for the reason mentioned in the first paragraph. It's a usability issue and I can say right now if I were to go to a website that intentionally tried to hide its URLs I would think something shady was going on and would leave pronto.
As for hiding the URL in the address bar, I believe you can do this in an .htaccess file (again, PHP is not the tool to accomplish this), but I am not an expert with .htaccess files so I wouldn't know any specific code. Doing some searching online should be able to yield you with decent results though.
Is there a particular reason you're trying to hide the URLs so badly? If your issue is you don't like the file extensions you can definitely remove them via .htaccess (so www.example.com/about-us.php becomes www.example.com/about-us). Pretty sure this would also help with your SEO, if you care about that.