Одним из преимуществ $ _GET и $ _POST является то, что вы точно знаете, как ваш скрипт получил параметры. Он также хранит их в отдельных пространствах имен, поэтому $ _GET ['foo'] всегда будет отличаться от $ _POST ['foo'], чего не делает $ _REQUEST.
В конце концов, это выбор дизайна, который зависит от вас, но однажды в будущем вы оглянетесь назад и будете рады, что вы использовали $ _GET вместо $ _REQUEST (если только у вас не было конкретной причины к). Однако следует помнить одну вещь: $ _GET, $ _POST и $ _REQUEST, возможно, содержат данные, управляемые пользователем, поэтому НЕ ДОЛЖНЫ доверять. Всегда санируйте!