php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Doc Bug #80971 func_get_args() didnt work when using named args
Submitted: 2021-04-20 16:38 UTC Modified: 2025-04-25 08:30 UTC
From: antoni at friki dot cat Assigned: vrana (profile)
Status: Closed Package: *General Issues
PHP Version: 8.0.3 OS:
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: antoni at friki dot cat
New email:
PHP Version: OS:

 

 [2021-04-20 16:38 UTC] antoni at friki dot cat
Description:
------------
func_get_args() in combination with named args returns an empty array.

Test script:
---------------
<?php

function foo(...$args) {
    //var_dump($args);
    var_dump(func_get_args());
}

foo(a: 9, b: 99, c: 999);


Expected result:
----------------
I expected an array with 3 elements.

Probably:
array(3) {
  ["a"]=>
  int(9)
  ["b"]=>
  int(99)
  ["c"]=>
  int(999)
}

Or:
array(3) {
  [0]=>
  int(9)
  [1]=>
  int(99)
  [2]=>
  int(999)
}

Actual result:
--------------
array(0) {
}

Patches

Pull Requests

Pull requests:

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2021-04-20 17:00 UTC] cmb@php.net
-Type: Bug +Type: Documentation Problem -Package: *General Issues +Package: Scripting Engine problem
 [2021-04-20 17:00 UTC] cmb@php.net
This is expected, but apparently undocumented.  From the RFC[1]:

| All three functions are oblivious to the collection of unknown
| named arguments by variadics. func_get_args() will not return the
| collected values and func_num_args() will not include them in the
| argument count. Collected unknown named arguments can only be
| accessed through the variadic parameter.

[1] <https://wiki.php.net/rfc/named_params#func_get_args_and_friends>
 [2021-05-11 06:42 UTC] krakjoe@php.net
-Package: Scripting Engine problem +Package: Documentation problem
 [2021-06-03 02:28 UTC] lufei@php.net
The following pull request has been associated:

Patch Name: Fix 80971: func_get_args() didnt work when using named args
On GitHub:  https://github.com/php/doc-en/pull/650
Patch:      https://github.com/php/doc-en/pull/650.patch
 [2023-05-06 03:00 UTC] timkeller at aol dot com
(https://moderndogmagazine.com/articles/best-online-dog-training-courses)github.com
 [2023-09-29 06:41 UTC] ta dot nnaowens6 at googlemail dot com
Thanks for sharing this, this is amazing. i like it. (https://github.com)(https://www.subwaygiftcardbalance.online/)
 [2025-04-25 08:30 UTC] vrana@php.net
Thank you for your bug report. This issue has already been fixed
in the latest released version of PHP, which you can download at
http://www.php.net/downloads.php


 [2025-04-25 08:30 UTC] vrana@php.net
-Status: Open +Status: Closed -Package: Documentation problem +Package: *General Issues -Assigned To: +Assigned To: vrana
 
PHP Copyright © 2001-2025 The PHP Group
All rights reserved.
Last updated: Fri May 09 07:01:28 2025 UTC