@@ -101,16 +101,16 @@ private static function filterInteger(int $value): int
101
101
*/
102
102
public static function fromHttpValue (string $ httpValue ): self
103
103
{
104
- $ httpValue = trim ($ httpValue , ' ' );
104
+ $ itemString = trim ($ httpValue , ' ' );
105
+
105
106
[$ value , $ parameters ] = match (true ) {
106
- '' === $ httpValue ,
107
- 1 === preg_match ("/[ \r\t\n]/ " , $ httpValue ),
108
- 1 === preg_match ("/[^ \x20- \x7E]/ " , $ httpValue ) => throw new SyntaxError ("The HTTP textual representation ` $ httpValue` for an item contains invalid characters. " ),
109
- 1 === preg_match ('/^(-?[0-9])/ ' , $ httpValue ) => self ::parseNumber ($ httpValue ),
110
- '" ' === $ httpValue [0 ] => self ::parseString ($ httpValue ),
111
- ': ' === $ httpValue [0 ] => self ::parseBytesSequence ($ httpValue ),
112
- '? ' === $ httpValue [0 ] => self ::parseBoolean ($ httpValue ),
113
- 1 === preg_match ('/^([a-z*])/i ' , $ httpValue ) => self ::parseToken ($ httpValue ),
107
+ 1 === preg_match ("/[ \r\t\n]|[^ \x20- \x7E]/ " , $ itemString ),
108
+ '' === $ itemString => throw new SyntaxError ("The HTTP textual representation ` $ httpValue` for an item contains invalid characters. " ),
109
+ '" ' === $ itemString [0 ] => self ::parseString ($ itemString ),
110
+ ': ' === $ itemString [0 ] => self ::parseBytesSequence ($ itemString ),
111
+ '? ' === $ itemString [0 ] => self ::parseBoolean ($ itemString ),
112
+ 1 === preg_match ('/^(-?[0-9])/ ' , $ itemString ) => self ::parseNumber ($ itemString ),
113
+ 1 === preg_match ('/^([a-z*])/i ' , $ itemString ) => self ::parseToken ($ itemString ),
114
114
default => throw new SyntaxError ("The HTTP textual representation ` $ httpValue` for an item is unknown or unsupported. " ),
115
115
};
116
116
0 commit comments