mirror of
https://github.com/php/php-src.git
synced 2025-08-16 05:58:45 +02:00

Any number of arguments can be replaced by a variadic one, so long as the variadic argument is compatible (in the sense of contravariance) with the subsumed arguments. In particular this means that function(...$args) becomes a near-universal signature: It is compatible with any function signature that does not accept parameters by-reference. This also fixes bug #70839, which describes a special case. Closes GH-5059.
17 lines
271 B
PHP
17 lines
271 B
PHP
--TEST--
|
|
It is possible to remove required parameter before a variadic parameter
|
|
--FILE--
|
|
<?php
|
|
|
|
interface DB {
|
|
public function query($query, ...$params);
|
|
}
|
|
|
|
class MySQL implements DB {
|
|
public function query(...$params) { }
|
|
}
|
|
|
|
?>
|
|
===DONE===
|
|
--EXPECT--
|
|
===DONE===
|