1) It can be a security thing.
i.e. If I process a form with $REQUEST then the input can come in via get or post, whereas if I use $POST then the input must come in via the post method. This offers me a bit of security by not allowing the user to put the information into a query string and circumvent my form. Granted this doesn't offer much security but it is a first line defense against things like sql insertion.
2) It makes code more readable.
i.e. If I am processing variables and I use $REQUEST then all that the person reading the code knows is that they came from the user. If I use $GET and $_POST it is clear wether I expect that variable to come from a form or a query string.