Hi Stas,
I really like this RFC. It makes it simple to use defined defaults
without the need to know about them of to updated.
But I think adding "default" as new keyword is a big BC break!
I personally also don't like it and asked myself why can't the parameter
simply skipped?
function foo ($a='a', $b='b') {}
foo();
foo($a);
foo(, $b);
foo($a,);
foo(,);
Is it possible to use the default parameter on inheritance?
class Bar {
function foo($a='a', $b='b') {}
}
class Baz extends Bar {
function foo($a=default, $b=default) {
// do something
parent::foo($a, $b);
}
}
Marc
Am 02.09.2013 um 09:17 schrieb Stas Malyshev:
Hi!
I've finally took some time to revive the skipping parameter RFC and
patch. For those who doesn't remember what it is please see:
https://wiki.php.net/rfc/skipparams
TLDR version:
The idea is to allow skipping parameters in function with optional
arguments so that this:
function create_query($where, $order_by, $join_type='INNER', $execute
= false, $report_errors = true)
can be called like this:
create_query("deleted=0", "name", default, default,
/*report_errors*/ true);
Instead of trying to remember what the defaults are.
The patch is here:
https://github.com/php/php-src/pull/426
Any comments or feedback on the RFCs and the code are welcome,
especially pointing out the cases where it may not work (which means we
need more phpt's there :)
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php