code: public static function parseHeader($name, $value)
      {
          static $qNames = array(
              "accept",
              "accept-language",
              "accept-encoding",
          );
          static $dNames = array(
              "date",
              "if-modified-since",
              "last-modified",
          );
          $lName = strtolower($name);
          if (in_array($lName, $qNames)) {
              return new QualityValues($lName, self::parseQualityValue($value));
          }
          if (in_array($lName, $dNames)) {
              $format    = HttpDateFormat::getInstance();
              $timestamp = Timestamp::parse($value, $format);
              return new HttpDate($lName, $timestamp, $format);
          }
          if ($lName === "host") {
              return new Raw(":authority", $value);
          }
          
          return new Raw($lName, $value);
      }
docs: 指定されたヘッダー名, ヘッダー値の組み合わせから
  HeaderField オブジェクトを構築します.
  
  @param  string $name  ヘッダー名
  @param  string $value ヘッダー値
  @return HeaderField