Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Update http_kernel_controller_resolver.rst#16496

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Closed
wolkenheim wants to merge1 commit intosymfony:5.4fromwolkenheim:patch-1
Closed

Update http_kernel_controller_resolver.rst#16496

wolkenheim wants to merge1 commit intosymfony:5.4fromwolkenheim:patch-1

Conversation

wolkenheim
Copy link

I stumbled upon an exception: Uncaught TypeError: LeapYearController::index(): Argument#1 ($year) must be of type int, array given, called in /var/www/web/front.php on line 32 and defined in /var/www/src/routes.php:10

And this makes sense: getArguments() returns indeed an array with the parameters for the Controller method. However, the index method in the LeapYearController (or in general any controller) does not expect an array but single variables.

(new LeapYearController)->index(['year' => 2000])is wrong, and this is happening here when an array is passed into call_user_func().

Fix: use spread operator for array destructuring / unpacking to pass in array values as variables. This is on PHP8.1 btw.

I stumbled upon an exception:  Uncaught TypeError: LeapYearController::index(): Argument#1 ($year) must be of type int, array given, called in /var/www/web/front.php on line 32 and defined in /var/www/src/routes.php:10This makes sense: getArguments() return indeed an array with the parameters. The index method in the LeapYearController does not expect an array at all. (new LeapYearController)->index(['year' => 2000]) is wrong, and this is happening here when an array is passed into call_user_func(). Fix: use spread operator for array destructuring / unpacking to pass in array values as variables. This is on PHP8.1 btw.
@carsonbotcarsonbot added this to the5.4 milestoneFeb 11, 2022
@wolkenheim
Copy link
Author

My apologies. In the text it is "call_user_func_array" and not as I misread "call_user_func". So the page is right, I was wrong. This can happen when you code along and don´t just copy & paste from a tutorial.

@wolkenheimwolkenheim deleted the patch-1 branchFebruary 11, 2022 12:35
Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment
Reviewers
No reviews
Assignees
No one assigned
Projects
None yet
Milestone
5.4
Development

Successfully merging this pull request may close these issues.

2 participants
@wolkenheim@carsonbot

[8]ページ先頭

©2009-2025 Movatter.jp