diff --git a/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php b/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php index d3902276752a..1dc9f636cd09 100644 --- a/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php +++ b/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php @@ -53,7 +53,7 @@ protected function transform($key, $value) return $value; } - return is_string($value) ? preg_replace('~^\s+|\s+$~iu', '', $value) : $value; + return is_string($value) ? preg_replace('~^[\s]+|[\s]+$~iu', '', $value) : $value; } /** diff --git a/tests/Foundation/Http/Middleware/TrimStringsTest.php b/tests/Foundation/Http/Middleware/TrimStringsTest.php index 8b7b7c328dc9..4c8e3fb65f91 100644 --- a/tests/Foundation/Http/Middleware/TrimStringsTest.php +++ b/tests/Foundation/Http/Middleware/TrimStringsTest.php @@ -34,7 +34,9 @@ public function testTrimStringsNBSP() $middleware = new TrimStrings; $symfonyRequest = new SymfonyRequest([ // Here has some NBSP, but it still display to space. + // Please note, do not edit in browser 'abc' => '  123   ', + 'zwnbsp' => ' ha ', 'xyz' => 'だ', 'foo' => 'ム', 'bar' => '  だ   ', @@ -45,6 +47,7 @@ public function testTrimStringsNBSP() $middleware->handle($request, function (Request $request) { $this->assertSame('123', $request->get('abc')); + $this->assertSame('ha', $request->get('zwnbsp')); $this->assertSame('だ', $request->get('xyz')); $this->assertSame('ム', $request->get('foo')); $this->assertSame('だ', $request->get('bar'));