In case testing $_GET['page'] it only test that variable exists (as answered above). But it does not test if variable has value. From isset point of view there is no difference between ?page and ?page=index
If you want to test that variable has some data, you can use empty() - [php.net...]
Isset returns false if the specified variable (or array element) has not been defined or if it has been defined but was assigned a value of null.
Isset is not a function. It is a "language construct." It sounds like I'm being pendantic to point it out, but it is important to know because you can't, for example, reference it as a variable function or pass it to a method expecting a function.