[HttpFoundation] Allow null in InputBag@set

This commit is contained in:
Taylor Otwell 2020-06-17 14:47:49 -05:00 committed by Robin Chalas
parent bf2fb938be
commit 14ec6a7659
2 changed files with 4 additions and 4 deletions

View File

@ -72,12 +72,12 @@ final class InputBag extends ParameterBag
/**
* Sets an input by name.
*
* @param string|array $value
* @param string|array|null $value
*/
public function set(string $key, $value)
{
if (!is_scalar($value) && !\is_array($value) && !method_exists($value, '__toString')) {
trigger_deprecation('symfony/http-foundation', '5.1', 'Passing "%s" as a 2nd Argument to "%s()" is deprecated, pass a string or an array instead.', get_debug_type($value), __METHOD__);
if (null !== $value && !is_scalar($value) && !\is_array($value) && !method_exists($value, '__toString')) {
trigger_deprecation('symfony/http-foundation', '5.1', 'Passing "%s" as a 2nd Argument to "%s()" is deprecated, pass a string, array, or null instead.', get_debug_type($value), __METHOD__);
}
$this->parameters[$key] = $value;

View File

@ -51,7 +51,7 @@ class InputBagTest extends TestCase
public function testSetWithNonStringishOrArrayIsDeprecated()
{
$bag = new InputBag();
$this->expectDeprecation('Since symfony/http-foundation 5.1: Passing "Symfony\Component\HttpFoundation\InputBag" as a 2nd Argument to "Symfony\Component\HttpFoundation\InputBag::set()" is deprecated, pass a string or an array instead.');
$this->expectDeprecation('Since symfony/http-foundation 5.1: Passing "Symfony\Component\HttpFoundation\InputBag" as a 2nd Argument to "Symfony\Component\HttpFoundation\InputBag::set()" is deprecated, pass a string, array, or null instead.');
$bag->set('foo', new InputBag());
}