daha iyi bir yöntem isteği verileri denetleme detayları uzak soyut bir singleton / statik bir sınıf oluşturmak için olabilir.
Gibi bir şey:
class Request {
  private $defaults = array();
  private static $_instance = false;
  function getInstance () {
    if (!self::$_instance) {
     $c = __CLASS__;
      self::$_instance = new $c;
    }
    return self::$_instance;
  }
  function setDefaults($defaults) {
    $this->defaults = $defaults;
  }
  public function __get($field) {
    if (isset($_REQUEST[$field]) && !empty($_REQUEST[$field])) {
        return $_REQUEST['field'];        
      } elseif (isset($this->defaults[$field])) {
        return $this->defaults[$field];
      } else {
        return ''; # define a default value here.
      }
   }
}
Sonra yapabilirsiniz:
# get an instance of the request
$request = Request::getInstance();
# pass in defaults.
$request->setDefaults(array('name'=>'Please Specify'));
# access properties
echo $request->name;
echo $request->email;
Bu sizin bireysel komut yükler temiz yapar ve doğrulama vb uzakta soyutlayan Plus, bu tasarım ile kapsam yükleri vs vs işleme daha karmaşık varsayılan ekleyin, alternatif davranışları ekleme / genişletmek için düşünüyorum