Re: Allow combining arg unpacking and named args
| From: | Levi Morrison via internals | Date: | Tue, 25 May 2021 14:36:32 +0000 |
| Subject: | Re: Allow combining arg unpacking and named args | ||
| References: | 1 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-114591@lists.php.net to get a copy of this message | ||
On Tue, May 25, 2021 at 8:18 AM Nikita Popov <nikita.ppv@gmail.com> wrote:
>
> Hi internals,
>
> Currently, argument unpacking (...$foo) cannot be combined with named
> arguments (foo: $bar) at all. Both func(...$args, x: $y) and func(x: $y,
> ...$args) are rejected by the compiler.
>
> https://github.com/php/php-src/pull/7009 relaxes this by
> allowing
> func(...$args, x: $y). The named arguments are required to come last,
> because this automatically enforces the invariant that named arguments must
> be sorted after positional argument.
>
> Are there any concerns with relaxing this restriction?
>
> Regards,
> Nikita
How do named parameters interact with the variadic parameter?
function f(...$params) { var_dump($params); }
$args = [1, 2, 3];
f(...$args, params: [4, 5, 6]);